
int spname(char *oldname,char *newname)

{
  char *pcVar1;
  char cVar2;
  char *oldname_00;
  char cVar6;
  int iVar3;
  int iVar4;
  uint uVar5;
  char *pcVar7;
  char *pcVar8;
  char cVar9;
  char *pcVar10;
  char *pcVar11;
  char *pcVar12;
  char *pcVar13;
  undefined *puVar14;
  int iStack_2050;
  char guess [4097];
  char best [4097];
  
  puVar14 = PTR___stack_chk_guard_001464dc;
  oldname_00 = *(char **)PTR___stack_chk_guard_001464dc;
  pcVar7 = PTR_DAT_001445ac + -0x7e78;
  pcVar10 = oldname;
  pcVar11 = newname;
LAB_000da830:
  do {
    cVar6 = *pcVar10;
    while (cVar6 != '/') {
      *pcVar11 = '\0';
      cVar6 = *pcVar10;
      if (cVar6 == '\0') {
        if ((((oldname[1] != '\0') || (newname[1] != '\0')) || (*oldname == '.')) ||
           (*newname != '.')) {
          iVar3 = (*(code *)PTR_strcmp_00146548)(oldname,newname);
          uVar5 = (uint)(iVar3 != 0);
          goto LAB_000daaf0;
        }
LAB_000daaec:
        uVar5 = 0xffffffff;
LAB_000daaf0:
        if (oldname_00 == *(char **)puVar14) {
          return uVar5;
        }
        puVar14 = PTR___stack_chk_fail_00146488;
        (*(code *)PTR___stack_chk_fail_00146488)();
        iVar3 = (**(code **)(puVar14 + 0x6b7cc))();
        pcVar10 = (char *)(**(code **)(puVar14 + 0x6b824))((iVar3 * 3 + 1U >> 1) + 1);
        if ((pcVar10 != (char *)0x0) && (uVar5 = spname(oldname_00,pcVar10), 1 < uVar5)) {
          (**(code **)(puVar14 + 0x6b938))(pcVar10);
          return 0;
        }
        return (int)pcVar10;
      }
      pcVar8 = guess;
      if (cVar6 != '/') {
        do {
          if (pcVar8 < guess + 0x1000) {
            *pcVar8 = cVar6;
            pcVar8 = pcVar8 + 1;
          }
          pcVar10 = pcVar10 + 1;
          cVar6 = *pcVar10;
        } while ((cVar6 != '/') && (cVar6 != '\0'));
      }
      *pcVar8 = '\0';
      pcVar8 = pcVar7;
      if (*newname != '\0') {
        pcVar8 = newname;
      }
      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar8);
      if (iVar3 == 0) goto LAB_000daaec;
      iStack_2050 = 3;
LAB_000da8c8:
      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);
      if (iVar4 != 0) {
        do {
          cVar6 = *(char *)(iVar4 + 0x13);
          pcVar13 = (char *)(iVar4 + 0x13);
          pcVar12 = pcVar13;
          pcVar8 = guess;
          cVar9 = guess[0];
          cVar2 = guess[0];
          if (guess[0] == cVar6) {
            do {
              if (cVar2 == '\0') {
                (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);
                (*(code *)PTR_closedir_00146208)(iVar3);
                if (best[0] != '.') goto LAB_000daa0c;
                if (best[1] == '\0') goto LAB_000daaec;
                goto LAB_000daaa4;
              }
              pcVar12 = pcVar12 + 1;
              pcVar1 = pcVar8 + 1;
              cVar6 = *pcVar12;
              pcVar8 = pcVar8 + 1;
              cVar9 = *pcVar1;
              cVar2 = cVar6;
            } while (cVar6 == *pcVar1);
          }
          if (cVar6 == '\0') {
            if (cVar9 == '\0') goto LAB_000da8c8;
LAB_000da988:
            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12,pcVar8 + 1);
            if (iVar4 != 0) goto LAB_000da8c8;
LAB_000da9a0:
            if (iStack_2050 == 1) goto LAB_000da8c8;
            iStack_2050 = 2;
          }
          else {
            if (cVar9 == '\0') {
              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8);
              if (iVar4 == 0) goto LAB_000da9a0;
              goto LAB_000da8c8;
            }
            if (((pcVar12[1] == '\0') || (pcVar8[1] == '\0')) ||
               ((pcVar8[1] != cVar6 ||
                ((pcVar12[1] != cVar9 ||
                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0)))))) {
              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8 + 1);
              if ((iVar4 != 0) &&
                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8), iVar4 != 0))
              goto LAB_000da988;
              goto LAB_000da9a0;
            }
            iStack_2050 = 1;
          }
          (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);
          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);
          if (iVar4 == 0) break;
        } while( true );
      }
      (*(code *)PTR_closedir_00146208)(iVar3);
      if (best[0] == '.') {
        if ((best[1] == '\0') || (iStack_2050 == 3)) goto LAB_000daaec;
LAB_000daaa4:
        *pcVar11 = best[0];
      }
      else {
        uVar5 = 0xffffffff;
        if (iStack_2050 == 3) goto LAB_000daaf0;
LAB_000daa0c:
        *pcVar11 = best[0];
        if (best[0] == '\0') goto LAB_000da830;
      }
      pcVar8 = best + 1;
      cVar6 = best[1];
      while( true ) {
        pcVar11 = pcVar11 + 1;
        *pcVar11 = cVar6;
        pcVar8 = pcVar8 + 1;
        if (cVar6 == '\0') break;
        cVar6 = *pcVar8;
      }
      cVar6 = *pcVar10;
    }
    *pcVar11 = '/';
    pcVar10 = pcVar10 + 1;
    pcVar11 = pcVar11 + 1;
  } while( true );
}



uint spname(char *param_1,char *param_2)

{
  char *pcVar1;
  char cVar2;
  char cVar7;
  int iVar3;
  int iVar4;
  uint uVar5;
  uint uVar6;
  char *pcVar8;
  char *pcVar9;
  char cVar10;
  char *pcVar11;
  char *pcVar12;
  char *pcVar13;
  char *pcVar14;
  undefined *puVar15;
  int local_2050;
  char local_2034 [4100];
  char local_1030;
  char local_102f;
  char local_102e [4098];
  int local_2c;
  
  puVar15 = PTR___stack_chk_guard_001464dc;
  local_2c = *(int *)PTR___stack_chk_guard_001464dc;
  pcVar8 = PTR_DAT_001445ac + -0x7e78;
  pcVar11 = param_1;
  pcVar12 = param_2;
LAB_000da830:
  do {
    cVar7 = *pcVar11;
    while (cVar7 != '/') {
      *pcVar12 = '\0';
      cVar7 = *pcVar11;
      if (cVar7 == '\0') {
        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||
           (*param_2 != '.')) {
          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);
          uVar5 = (uint)(iVar3 != 0);
          goto LAB_000daaf0;
        }
LAB_000daaec:
        uVar5 = 0xffffffff;
LAB_000daaf0:
        if (local_2c == *(int *)puVar15) {
          return uVar5;
        }
        iVar3 = local_2c;
        puVar15 = PTR___stack_chk_fail_00146488;
        (*(code *)PTR___stack_chk_fail_00146488)();
        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();
        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);
        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {
          (**(code **)(puVar15 + 0x6b938))(uVar5);
          return 0;
        }
        return uVar5;
      }
      pcVar9 = local_2034;
      if (cVar7 != '/') {
        do {
          if (pcVar9 < local_2034 + 0x1000) {
            *pcVar9 = cVar7;
            pcVar9 = pcVar9 + 1;
          }
          pcVar11 = pcVar11 + 1;
          cVar7 = *pcVar11;
        } while ((cVar7 != '/') && (cVar7 != '\0'));
      }
      *pcVar9 = '\0';
      pcVar9 = pcVar8;
      if (*param_2 != '\0') {
        pcVar9 = param_2;
      }
      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);
      if (iVar3 == 0) goto LAB_000daaec;
      local_2050 = 3;
LAB_000da8c8:
      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);
      if (iVar4 != 0) {
        do {
          cVar7 = *(char *)(iVar4 + 0x13);
          pcVar14 = (char *)(iVar4 + 0x13);
          pcVar13 = pcVar14;
          pcVar9 = local_2034;
          cVar10 = local_2034[0];
          cVar2 = local_2034[0];
          if (local_2034[0] == cVar7) {
            do {
              if (cVar2 == '\0') {
                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);
                (*(code *)PTR_closedir_00146208)(iVar3);
                if (local_1030 != '.') goto LAB_000daa0c;
                if (local_102f == '\0') goto LAB_000daaec;
                goto LAB_000daaa4;
              }
              pcVar13 = pcVar13 + 1;
              pcVar1 = pcVar9 + 1;
              cVar7 = *pcVar13;
              pcVar9 = pcVar9 + 1;
              cVar10 = *pcVar1;
              cVar2 = cVar7;
            } while (cVar7 == *pcVar1);
          }
          if (cVar7 == '\0') {
            if (cVar10 == '\0') goto LAB_000da8c8;
LAB_000da988:
            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);
            if (iVar4 != 0) goto LAB_000da8c8;
LAB_000da9a0:
            if (local_2050 == 1) goto LAB_000da8c8;
            local_2050 = 2;
          }
          else {
            if (cVar10 == '\0') {
              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);
              if (iVar4 == 0) goto LAB_000da9a0;
              goto LAB_000da8c8;
            }
            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||
               ((pcVar9[1] != cVar7 ||
                ((pcVar13[1] != cVar10 ||
                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {
              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);
              if ((iVar4 != 0) &&
                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))
              goto LAB_000da988;
              goto LAB_000da9a0;
            }
            local_2050 = 1;
          }
          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);
          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);
          if (iVar4 == 0) break;
        } while( true );
      }
      (*(code *)PTR_closedir_00146208)(iVar3);
      if (local_1030 == '.') {
        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;
LAB_000daaa4:
        *pcVar12 = local_1030;
      }
      else {
        uVar5 = 0xffffffff;
        if (local_2050 == 3) goto LAB_000daaf0;
LAB_000daa0c:
        *pcVar12 = local_1030;
        if (local_1030 == '\0') goto LAB_000da830;
      }
      pcVar9 = &local_102f;
      cVar7 = local_102f;
      while( true ) {
        pcVar12 = pcVar12 + 1;
        *pcVar12 = cVar7;
        pcVar9 = pcVar9 + 1;
        if (cVar7 == '\0') break;
        cVar7 = *pcVar9;
      }
      cVar7 = *pcVar11;
    }
    *pcVar12 = '/';
    pcVar11 = pcVar11 + 1;
    pcVar12 = pcVar12 + 1;
  } while( true );
}


lui gp,0x7
addiu gp,gp,0x1d80
addu gp,gp,t9
addiu sp,sp,-0x2068
lw v0,-0x6064(gp)
sw s7,0x205c(sp)
sw v0,0x28(sp)
sw s8,0x2060(sp)
addiu s8,sp,0x1038
sw s3,0x204c(sp)
addiu s3,sp,0x34
lw s7,-0x7f94(gp)
lw v0,0x0(v0)
sw s1,0x2044(sp)
or s1,a1,zero
addiu v1,s7,-0x7e78
sw s0,0x2040(sp)
sw gp,0x10(sp)
or s0,a0,zero
sw ra,0x2064(sp)
sw s6,0x2058(sp)
sw s5,0x2054(sp)
sw s4,0x2050(sp)
sw s2,0x2048(sp)
sw a0,0x2c(sp)
sw a1,0x20(sp)
sw v1,0x24(sp)
sw v0,0x203c(sp)
lb v0,0x0(s0)
li v1,0x2f
beq v0,v1,0x000daa44
_nop
sb zero,0x0(s1)
lb v0,0x0(s0)
beq v0,zero,0x000dab5c
_nop
beq v0,v1,0x000dabb0
_addiu a2,sp,0x1034
li a1,0x2f
b 0x000da86c
_or v1,s3,zero
beq v0,zero,0x000da890
_nop
sltu a0,v1,a2
beq a0,zero,0x000da880
_nop
sb v0,0x0(v1)
addiu v1,v1,0x1
addiu s0,s0,0x1
lb v0,0x0(s0)
bne v0,a1,0x000da864
_nop
lw v0,0x20(sp)
sb zero,0x0(v1)
lw v1,0x24(sp)
lw t9,-0x633c(gp)
lb a0,0x0(v0)
movn v1,v0,a0
jalr t9
_or a0,v1,zero
lw gp,0x10(sp)
beq v0,zero,0x000daaec
_or s2,v0,zero
li v0,0x3
sw v0,0x18(sp)
lw t9,-0x62c8(gp)
jalr t9
_or a0,s2,zero
beq v0,zero,0x000da9e0
_lw gp,0x10(sp)
lb v1,0x13(v0)
lb a0,0x34(sp)
bne a0,v1,0x000daa80
_addiu s7,v0,0x13
beq a0,zero,0x000daaac
_or s5,s7,zero
b 0x000da900
_or s6,s3,zero
beq v1,zero,0x000daab0
_lw t9,-0x624c(gp)
addiu s5,s5,0x1
lb a0,0x1(s6)
lb v1,0x0(s5)
beq v1,a0,0x000da8f8
_addiu s6,s6,0x1
beq v1,zero,0x000daa54
_nop
beq a0,zero,0x000daa64
_lw t9,-0x5ff8(gp)
lb v0,0x1(s5)
beq v0,zero,0x000da94c
_addiu t2,s5,0x1
lb a1,0x1(s6)
beq a1,zero,0x000da950
_addiu s4,s6,0x1
beq a1,v1,0x000dab30
_nop
addiu t2,s5,0x1
lw t9,-0x5ff8(gp)
addiu s4,s6,0x1
or a0,t2,zero
sw t2,0x1c(sp)
jalr t9
_or a1,s4,zero
lw gp,0x10(sp)
beq v0,zero,0x000da99c
_lw t2,0x1c(sp)
lw t9,-0x5ff8(gp)
or a1,s6,zero
jalr t9
_or a0,t2,zero
beq v0,zero,0x000da99c
_lw gp,0x10(sp)
lw t9,-0x5ff8(gp)
or a1,s4,zero
jalr t9
_or a0,s5,zero
bne v0,zero,0x000da8c4
_lw gp,0x10(sp)
lw v0,0x18(sp)
li v1,0x1
beq v0,v1,0x000da8c8
_lw t9,-0x62c8(gp)
li v0,0x2
sw v0,0x18(sp)
lw t9,-0x624c(gp)
li a2,0x1001
or a1,s7,zero
jalr t9
_or a0,s8,zero
lw gp,0x10(sp)
lw t9,-0x62c8(gp)
jalr t9
_or a0,s2,zero
bne v0,zero,0x000da8d8
_lw gp,0x10(sp)
lw t9,-0x6338(gp)
jalr t9
_or a0,s2,zero
li v0,0x2e
lb v1,0x1038(sp)
beq v1,v0,0x000daa8c
_lw gp,0x10(sp)
lw a0,0x18(sp)
li v0,0x3
beq a0,v0,0x000daaf0
_li v0,-0x1
beq v1,zero,0x000da830
_sb v1,0x0(s1)
lb v0,0x1039(sp)
b 0x000daa24
_addiu v1,sp,0x1039
lb v0,0x0(v1)
addiu s1,s1,0x1
sb v0,0x0(s1)
bne v0,zero,0x000daa20
_addiu v1,v1,0x1
lb v0,0x0(s0)
li v1,0x2f
bne v0,v1,0x000da840
_nop
sb v0,0x0(s1)
addiu s0,s0,0x1
b 0x000da830
_addiu s1,s1,0x1
beq a0,zero,0x000da8c4
_addiu s4,s6,0x1
b 0x000da988
_lw t9,-0x5ff8(gp)
addiu a0,s5,0x1
jalr t9
_or a1,s6,zero
bne v0,zero,0x000da8c4
_lw gp,0x10(sp)
b 0x000da9a0
_lw v0,0x18(sp)
or s5,s7,zero
b 0x000da914
_or s6,s3,zero
lb v0,0x1039(sp)
beq v0,zero,0x000daaec
_lw a1,0x18(sp)
li a0,0x3
beq a1,a0,0x000daaec
_nop
b 0x000daa18
_sb v1,0x0(s1)
lw t9,-0x624c(gp)
li a2,0x1001
or a0,s8,zero
jalr t9
_or a1,s7,zero
lw gp,0x10(sp)
lw t9,-0x6338(gp)
jalr t9
_or a0,s2,zero
li v0,0x2e
lb v1,0x1038(sp)
bne v1,v0,0x000daa0c
_lw gp,0x10(sp)
lb v0,0x1039(sp)
bne v0,zero,0x000daaa4
_nop
li v0,-0x1
lw v1,0x28(sp)
lw a0,0x203c(sp)
lw v1,0x0(v1)
bne a0,v1,0x000dabb8
_lw ra,0x2064(sp)
lw s8,0x2060(sp)
lw s7,0x205c(sp)
lw s6,0x2058(sp)
lw s5,0x2054(sp)
lw s4,0x2050(sp)
lw s3,0x204c(sp)
lw s2,0x2048(sp)
lw s1,0x2044(sp)
lw s0,0x2040(sp)
jr ra
_addiu sp,sp,0x2068
bne v0,a0,0x000da948
_addiu t2,s5,0x1
lw t9,-0x5ff8(gp)
addiu a1,s6,0x2
jalr t9
_addiu a0,s5,0x2
bne v0,zero,0x000da944
_lw gp,0x10(sp)
li v0,0x1
b 0x000da9b4
_sw v0,0x18(sp)
lw v1,0x2c(sp)
lb v0,0x1(v1)
bne v0,zero,0x000dab94
_lw a0,0x20(sp)
lb v0,0x1(a0)
bne v0,zero,0x000dab98
_lw t9,-0x5ff8(gp)
lb v1,0x0(v1)
li v0,0x2e
beq v1,v0,0x000dab9c
_lw a1,0x20(sp)
lb v1,0x0(a0)
beq v1,v0,0x000daaec
_nop
lw t9,-0x5ff8(gp)
lw a1,0x20(sp)
jalr t9
_lw a0,0x2c(sp)
lw gp,0x10(sp)
b 0x000daaf0
_sltu v0,zero,v0
b 0x000da890
_or v1,s3,zero
lw t9,-0x60b8(gp)
jalr t9
_nop
(translation_unit "uint spname(char *param_1,char *param_2)\n\n{\n  char *pcVar1;\n  char cVar2;\n  char cVar7;\n  int iVar3;\n  int iVar4;\n  uint uVar5;\n  uint uVar6;\n  char *pcVar8;\n  char *pcVar9;\n  char cVar10;\n  char *pcVar11;\n  char *pcVar12;\n  char *pcVar13;\n  char *pcVar14;\n  undefined *puVar15;\n  int local_2050;\n  char local_2034 [4100];\n  char local_1030;\n  char local_102f;\n  char local_102e [4098];\n  int local_2c;\n  \n  puVar15 = PTR___stack_chk_guard_001464dc;\n  local_2c = *(int *)PTR___stack_chk_guard_001464dc;\n  pcVar8 = PTR_DAT_001445ac + -0x7e78;\n  pcVar11 = param_1;\n  pcVar12 = param_2;\nLAB_000da830:\n  do {\n    cVar7 = *pcVar11;\n    while (cVar7 != '/') {\n      *pcVar12 = '\0';\n      cVar7 = *pcVar11;\n      if (cVar7 == '\0') {\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }\n      pcVar9 = local_2034;\n      if (cVar7 != '/') {\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }\n      *pcVar9 = '\0';\n      pcVar9 = pcVar8;\n      if (*param_2 != '\0') {\n        pcVar9 = param_2;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);\n      if (iVar3 == 0) goto LAB_000daaec;\n      local_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (local_1030 == '.') {\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }\n      pcVar9 = &local_102f;\n      cVar7 = local_102f;\n      while( true ) {\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }\n      cVar7 = *pcVar11;\n    }\n    *pcVar12 = '/';\n    pcVar11 = pcVar11 + 1;\n    pcVar12 = pcVar12 + 1;\n  } while( true );\n}\n\n" (function_definition "uint spname(char *param_1,char *param_2)\n\n{\n  char *pcVar1;\n  char cVar2;\n  char cVar7;\n  int iVar3;\n  int iVar4;\n  uint uVar5;\n  uint uVar6;\n  char *pcVar8;\n  char *pcVar9;\n  char cVar10;\n  char *pcVar11;\n  char *pcVar12;\n  char *pcVar13;\n  char *pcVar14;\n  undefined *puVar15;\n  int local_2050;\n  char local_2034 [4100];\n  char local_1030;\n  char local_102f;\n  char local_102e [4098];\n  int local_2c;\n  \n  puVar15 = PTR___stack_chk_guard_001464dc;\n  local_2c = *(int *)PTR___stack_chk_guard_001464dc;\n  pcVar8 = PTR_DAT_001445ac + -0x7e78;\n  pcVar11 = param_1;\n  pcVar12 = param_2;\nLAB_000da830:\n  do {\n    cVar7 = *pcVar11;\n    while (cVar7 != '/') {\n      *pcVar12 = '\0';\n      cVar7 = *pcVar11;\n      if (cVar7 == '\0') {\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }\n      pcVar9 = local_2034;\n      if (cVar7 != '/') {\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }\n      *pcVar9 = '\0';\n      pcVar9 = pcVar8;\n      if (*param_2 != '\0') {\n        pcVar9 = param_2;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);\n      if (iVar3 == 0) goto LAB_000daaec;\n      local_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (local_1030 == '.') {\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }\n      pcVar9 = &local_102f;\n      cVar7 = local_102f;\n      while( true ) {\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }\n      cVar7 = *pcVar11;\n    }\n    *pcVar12 = '/';\n    pcVar11 = pcVar11 + 1;\n    pcVar12 = pcVar12 + 1;\n  } while( true );\n}" type_identifier (function_declarator "spname(char *param_1,char *param_2)" identifier (parameter_list "(char *param_1,char *param_2)" ( (parameter_declaration "char *param_1" primitive_type (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "char *param_2" primitive_type (pointer_declarator "*param_2" * identifier)) ))) (compound_statement "{\n  char *pcVar1;\n  char cVar2;\n  char cVar7;\n  int iVar3;\n  int iVar4;\n  uint uVar5;\n  uint uVar6;\n  char *pcVar8;\n  char *pcVar9;\n  char cVar10;\n  char *pcVar11;\n  char *pcVar12;\n  char *pcVar13;\n  char *pcVar14;\n  undefined *puVar15;\n  int local_2050;\n  char local_2034 [4100];\n  char local_1030;\n  char local_102f;\n  char local_102e [4098];\n  int local_2c;\n  \n  puVar15 = PTR___stack_chk_guard_001464dc;\n  local_2c = *(int *)PTR___stack_chk_guard_001464dc;\n  pcVar8 = PTR_DAT_001445ac + -0x7e78;\n  pcVar11 = param_1;\n  pcVar12 = param_2;\nLAB_000da830:\n  do {\n    cVar7 = *pcVar11;\n    while (cVar7 != '/') {\n      *pcVar12 = '\0';\n      cVar7 = *pcVar11;\n      if (cVar7 == '\0') {\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }\n      pcVar9 = local_2034;\n      if (cVar7 != '/') {\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }\n      *pcVar9 = '\0';\n      pcVar9 = pcVar8;\n      if (*param_2 != '\0') {\n        pcVar9 = param_2;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);\n      if (iVar3 == 0) goto LAB_000daaec;\n      local_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (local_1030 == '.') {\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }\n      pcVar9 = &local_102f;\n      cVar7 = local_102f;\n      while( true ) {\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }\n      cVar7 = *pcVar11;\n    }\n    *pcVar12 = '/';\n    pcVar11 = pcVar11 + 1;\n    pcVar12 = pcVar12 + 1;\n  } while( true );\n}" { (declaration "char *pcVar1;" primitive_type (pointer_declarator "*pcVar1" * identifier) ;) (declaration "char cVar2;" primitive_type identifier ;) (declaration "char cVar7;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "uint uVar6;" type_identifier identifier ;) (declaration "char *pcVar8;" primitive_type (pointer_declarator "*pcVar8" * identifier) ;) (declaration "char *pcVar9;" primitive_type (pointer_declarator "*pcVar9" * identifier) ;) (declaration "char cVar10;" primitive_type identifier ;) (declaration "char *pcVar11;" primitive_type (pointer_declarator "*pcVar11" * identifier) ;) (declaration "char *pcVar12;" primitive_type (pointer_declarator "*pcVar12" * identifier) ;) (declaration "char *pcVar13;" primitive_type (pointer_declarator "*pcVar13" * identifier) ;) (declaration "char *pcVar14;" primitive_type (pointer_declarator "*pcVar14" * identifier) ;) (declaration "undefined *puVar15;" type_identifier (pointer_declarator "*puVar15" * identifier) ;) (declaration "int local_2050;" primitive_type identifier ;) (declaration "char local_2034 [4100];" primitive_type (array_declarator "local_2034 [4100]" identifier [ number_literal ]) ;) (declaration "char local_1030;" primitive_type identifier ;) (declaration "char local_102f;" primitive_type identifier ;) (declaration "char local_102e [4098];" primitive_type (array_declarator "local_102e [4098]" identifier [ number_literal ]) ;) (declaration "int local_2c;" primitive_type identifier ;) (expression_statement "puVar15 = PTR___stack_chk_guard_001464dc;" (assignment_expression "puVar15 = PTR___stack_chk_guard_001464dc" identifier = identifier) ;) (expression_statement "local_2c = *(int *)PTR___stack_chk_guard_001464dc;" (assignment_expression "local_2c = *(int *)PTR___stack_chk_guard_001464dc" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_001464dc" * (cast_expression "(int *)PTR___stack_chk_guard_001464dc" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "pcVar8 = PTR_DAT_001445ac + -0x7e78;" (assignment_expression "pcVar8 = PTR_DAT_001445ac + -0x7e78" identifier = (binary_expression "PTR_DAT_001445ac + -0x7e78" identifier + number_literal)) ;) (expression_statement "pcVar11 = param_1;" (assignment_expression "pcVar11 = param_1" identifier = identifier) ;) (expression_statement "pcVar12 = param_2;" (assignment_expression "pcVar12 = param_2" identifier = identifier) ;) (labeled_statement "LAB_000da830:\n  do {\n    cVar7 = *pcVar11;\n    while (cVar7 != '/') {\n      *pcVar12 = '\0';\n      cVar7 = *pcVar11;\n      if (cVar7 == '\0') {\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }\n      pcVar9 = local_2034;\n      if (cVar7 != '/') {\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }\n      *pcVar9 = '\0';\n      pcVar9 = pcVar8;\n      if (*param_2 != '\0') {\n        pcVar9 = param_2;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);\n      if (iVar3 == 0) goto LAB_000daaec;\n      local_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (local_1030 == '.') {\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }\n      pcVar9 = &local_102f;\n      cVar7 = local_102f;\n      while( true ) {\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }\n      cVar7 = *pcVar11;\n    }\n    *pcVar12 = '/';\n    pcVar11 = pcVar11 + 1;\n    pcVar12 = pcVar12 + 1;\n  } while( true );" statement_identifier : (do_statement "do {\n    cVar7 = *pcVar11;\n    while (cVar7 != '/') {\n      *pcVar12 = '\0';\n      cVar7 = *pcVar11;\n      if (cVar7 == '\0') {\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }\n      pcVar9 = local_2034;\n      if (cVar7 != '/') {\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }\n      *pcVar9 = '\0';\n      pcVar9 = pcVar8;\n      if (*param_2 != '\0') {\n        pcVar9 = param_2;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);\n      if (iVar3 == 0) goto LAB_000daaec;\n      local_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (local_1030 == '.') {\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }\n      pcVar9 = &local_102f;\n      cVar7 = local_102f;\n      while( true ) {\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }\n      cVar7 = *pcVar11;\n    }\n    *pcVar12 = '/';\n    pcVar11 = pcVar11 + 1;\n    pcVar12 = pcVar12 + 1;\n  } while( true );" do (compound_statement "{\n    cVar7 = *pcVar11;\n    while (cVar7 != '/') {\n      *pcVar12 = '\0';\n      cVar7 = *pcVar11;\n      if (cVar7 == '\0') {\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }\n      pcVar9 = local_2034;\n      if (cVar7 != '/') {\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }\n      *pcVar9 = '\0';\n      pcVar9 = pcVar8;\n      if (*param_2 != '\0') {\n        pcVar9 = param_2;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);\n      if (iVar3 == 0) goto LAB_000daaec;\n      local_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (local_1030 == '.') {\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }\n      pcVar9 = &local_102f;\n      cVar7 = local_102f;\n      while( true ) {\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }\n      cVar7 = *pcVar11;\n    }\n    *pcVar12 = '/';\n    pcVar11 = pcVar11 + 1;\n    pcVar12 = pcVar12 + 1;\n  }" { (expression_statement "cVar7 = *pcVar11;" (assignment_expression "cVar7 = *pcVar11" identifier = (pointer_expression "*pcVar11" * identifier)) ;) (while_statement "while (cVar7 != '/') {\n      *pcVar12 = '\0';\n      cVar7 = *pcVar11;\n      if (cVar7 == '\0') {\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }\n      pcVar9 = local_2034;\n      if (cVar7 != '/') {\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }\n      *pcVar9 = '\0';\n      pcVar9 = pcVar8;\n      if (*param_2 != '\0') {\n        pcVar9 = param_2;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);\n      if (iVar3 == 0) goto LAB_000daaec;\n      local_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (local_1030 == '.') {\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }\n      pcVar9 = &local_102f;\n      cVar7 = local_102f;\n      while( true ) {\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }\n      cVar7 = *pcVar11;\n    }" while (parenthesized_expression "(cVar7 != '/')" ( (binary_expression "cVar7 != '/'" identifier != (char_literal "'/'" ' character ')) )) (compound_statement "{\n      *pcVar12 = '\0';\n      cVar7 = *pcVar11;\n      if (cVar7 == '\0') {\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }\n      pcVar9 = local_2034;\n      if (cVar7 != '/') {\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }\n      *pcVar9 = '\0';\n      pcVar9 = pcVar8;\n      if (*param_2 != '\0') {\n        pcVar9 = param_2;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);\n      if (iVar3 == 0) goto LAB_000daaec;\n      local_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (local_1030 == '.') {\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }\n      pcVar9 = &local_102f;\n      cVar7 = local_102f;\n      while( true ) {\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }\n      cVar7 = *pcVar11;\n    }" { (expression_statement "*pcVar12 = '\0';" (assignment_expression "*pcVar12 = '\0'" (pointer_expression "*pcVar12" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "cVar7 = *pcVar11;" (assignment_expression "cVar7 = *pcVar11" identifier = (pointer_expression "*pcVar11" * identifier)) ;) (if_statement "if (cVar7 == '\0') {\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }" if (parenthesized_expression "(cVar7 == '\0')" ( (binary_expression "cVar7 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }" { (if_statement "if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }" if (parenthesized_expression "((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.'))" ( (binary_expression "(((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')" (parenthesized_expression "(((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.'))" ( (binary_expression "((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')" (parenthesized_expression "((param_1[1] != '\0') || (param_2[1] != '\0'))" ( (binary_expression "(param_1[1] != '\0') || (param_2[1] != '\0')" (parenthesized_expression "(param_1[1] != '\0')" ( (binary_expression "param_1[1] != '\0'" (subscript_expression "param_1[1]" identifier [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(param_2[1] != '\0')" ( (binary_expression "param_2[1] != '\0'" (subscript_expression "param_2[1]" identifier [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) ))) )) || (parenthesized_expression "(*param_1 == '.')" ( (binary_expression "*param_1 == '.'" (pointer_expression "*param_1" * identifier) == (char_literal "'.'" ' character ')) ))) )) || (parenthesized_expression "(*param_2 != '.')" ( (binary_expression "*param_2 != '.'" (pointer_expression "*param_2" * identifier) != (char_literal "'.'" ' character ')) ))) )) (compound_statement "{\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }" { (expression_statement "iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);" (assignment_expression "iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2)" identifier = (call_expression "(*(code *)PTR_strcmp_00146548)(param_1,param_2)" (parenthesized_expression "(*(code *)PTR_strcmp_00146548)" ( (pointer_expression "*(code *)PTR_strcmp_00146548" * (cast_expression "(code *)PTR_strcmp_00146548" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,param_2)" ( identifier , identifier )))) ;) (expression_statement "uVar5 = (uint)(iVar3 != 0);" (assignment_expression "uVar5 = (uint)(iVar3 != 0)" identifier = (call_expression "(uint)(iVar3 != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )))) ;) (goto_statement "goto LAB_000daaf0;" goto statement_identifier ;) })) (labeled_statement "LAB_000daaec:\n        uVar5 = 0xffffffff;" statement_identifier : (expression_statement "uVar5 = 0xffffffff;" (assignment_expression "uVar5 = 0xffffffff" identifier = number_literal) ;)) (labeled_statement "LAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }" statement_identifier : (if_statement "if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }" if (parenthesized_expression "(local_2c == *(int *)puVar15)" ( (binary_expression "local_2c == *(int *)puVar15" identifier == (pointer_expression "*(int *)puVar15" * (cast_expression "(int *)puVar15" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n          return uVar5;\n        }" { (return_statement "return uVar5;" return identifier ;) }))) (expression_statement "iVar3 = local_2c;" (assignment_expression "iVar3 = local_2c" identifier = identifier) ;) (expression_statement "puVar15 = PTR___stack_chk_fail_00146488;" (assignment_expression "puVar15 = PTR___stack_chk_fail_00146488" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_00146488)();" (call_expression "(*(code *)PTR___stack_chk_fail_00146488)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_00146488)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_00146488" * (cast_expression "(code *)PTR___stack_chk_fail_00146488" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "iVar4 = (**(code **)(puVar15 + 0x6b7cc))();" (assignment_expression "iVar4 = (**(code **)(puVar15 + 0x6b7cc))()" identifier = (call_expression "(**(code **)(puVar15 + 0x6b7cc))()" (parenthesized_expression "(**(code **)(puVar15 + 0x6b7cc))" ( (pointer_expression "**(code **)(puVar15 + 0x6b7cc)" * (pointer_expression "*(code **)(puVar15 + 0x6b7cc)" * (cast_expression "(code **)(puVar15 + 0x6b7cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar15 + 0x6b7cc)" ( (binary_expression "puVar15 + 0x6b7cc" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);" (assignment_expression "uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1)" identifier = (call_expression "(**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1)" (parenthesized_expression "(**(code **)(puVar15 + 0x6b824))" ( (pointer_expression "**(code **)(puVar15 + 0x6b824)" * (pointer_expression "*(code **)(puVar15 + 0x6b824)" * (cast_expression "(code **)(puVar15 + 0x6b824)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar15 + 0x6b824)" ( (binary_expression "puVar15 + 0x6b824" identifier + number_literal) ))))) )) (argument_list "((iVar4 * 3 + 1U >> 1) + 1)" ( (binary_expression "(iVar4 * 3 + 1U >> 1) + 1" (parenthesized_expression "(iVar4 * 3 + 1U >> 1)" ( (binary_expression "iVar4 * 3 + 1U >> 1" (binary_expression "iVar4 * 3 + 1U" (binary_expression "iVar4 * 3" identifier * number_literal) + number_literal) >> number_literal) )) + number_literal) )))) ;) (if_statement "if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }" if (parenthesized_expression "((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6))" ( (binary_expression "(uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)" (parenthesized_expression "(uVar5 != 0)" ( (binary_expression "uVar5 != 0" identifier != number_literal) )) && (parenthesized_expression "(uVar6 = spname(iVar3,uVar5), 1 < uVar6)" ( (comma_expression "uVar6 = spname(iVar3,uVar5), 1 < uVar6" (assignment_expression "uVar6 = spname(iVar3,uVar5)" identifier = (call_expression "spname(iVar3,uVar5)" identifier (argument_list "(iVar3,uVar5)" ( identifier , identifier )))) , (binary_expression "1 < uVar6" number_literal < identifier)) ))) )) (compound_statement "{\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }" { (expression_statement "(**(code **)(puVar15 + 0x6b938))(uVar5);" (call_expression "(**(code **)(puVar15 + 0x6b938))(uVar5)" (parenthesized_expression "(**(code **)(puVar15 + 0x6b938))" ( (pointer_expression "**(code **)(puVar15 + 0x6b938)" * (pointer_expression "*(code **)(puVar15 + 0x6b938)" * (cast_expression "(code **)(puVar15 + 0x6b938)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar15 + 0x6b938)" ( (binary_expression "puVar15 + 0x6b938" identifier + number_literal) ))))) )) (argument_list "(uVar5)" ( identifier ))) ;) (return_statement "return 0;" return number_literal ;) })) (return_statement "return uVar5;" return identifier ;) })) (expression_statement "pcVar9 = local_2034;" (assignment_expression "pcVar9 = local_2034" identifier = identifier) ;) (if_statement "if (cVar7 != '/') {\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }" if (parenthesized_expression "(cVar7 != '/')" ( (binary_expression "cVar7 != '/'" identifier != (char_literal "'/'" ' character ')) )) (compound_statement "{\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }" { (do_statement "do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));" do (compound_statement "{\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        }" { (if_statement "if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }" if (parenthesized_expression "(pcVar9 < local_2034 + 0x1000)" ( (binary_expression "pcVar9 < local_2034 + 0x1000" identifier < (binary_expression "local_2034 + 0x1000" identifier + number_literal)) )) (compound_statement "{\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }" { (expression_statement "*pcVar9 = cVar7;" (assignment_expression "*pcVar9 = cVar7" (pointer_expression "*pcVar9" * identifier) = identifier) ;) (expression_statement "pcVar9 = pcVar9 + 1;" (assignment_expression "pcVar9 = pcVar9 + 1" identifier = (binary_expression "pcVar9 + 1" identifier + number_literal)) ;) })) (expression_statement "pcVar11 = pcVar11 + 1;" (assignment_expression "pcVar11 = pcVar11 + 1" identifier = (binary_expression "pcVar11 + 1" identifier + number_literal)) ;) (expression_statement "cVar7 = *pcVar11;" (assignment_expression "cVar7 = *pcVar11" identifier = (pointer_expression "*pcVar11" * identifier)) ;) }) while (parenthesized_expression "((cVar7 != '/') && (cVar7 != '\0'))" ( (binary_expression "(cVar7 != '/') && (cVar7 != '\0')" (parenthesized_expression "(cVar7 != '/')" ( (binary_expression "cVar7 != '/'" identifier != (char_literal "'/'" ' character ')) )) && (parenthesized_expression "(cVar7 != '\0')" ( (binary_expression "cVar7 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) ))) )) ;) })) (expression_statement "*pcVar9 = '\0';" (assignment_expression "*pcVar9 = '\0'" (pointer_expression "*pcVar9" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9 = pcVar8;" (assignment_expression "pcVar9 = pcVar8" identifier = identifier) ;) (if_statement "if (*param_2 != '\0') {\n        pcVar9 = param_2;\n      }" if (parenthesized_expression "(*param_2 != '\0')" ( (binary_expression "*param_2 != '\0'" (pointer_expression "*param_2" * identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        pcVar9 = param_2;\n      }" { (expression_statement "pcVar9 = param_2;" (assignment_expression "pcVar9 = param_2" identifier = identifier) ;) })) (expression_statement "iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);" (assignment_expression "iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9)" identifier = (call_expression "(*(code *)PTR_opendir_00146204)(pcVar9)" (parenthesized_expression "(*(code *)PTR_opendir_00146204)" ( (pointer_expression "*(code *)PTR_opendir_00146204" * (cast_expression "(code *)PTR_opendir_00146204" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar9)" ( identifier )))) ;) (if_statement "if (iVar3 == 0) goto LAB_000daaec;" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000daaec;" goto statement_identifier ;)) (expression_statement "local_2050 = 3;" (assignment_expression "local_2050 = 3" identifier = number_literal) ;) (labeled_statement "LAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);" statement_identifier : (expression_statement "iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);" (assignment_expression "iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3)" identifier = (call_expression "(*(code *)PTR_readdir64_00146278)(iVar3)" (parenthesized_expression "(*(code *)PTR_readdir64_00146278)" ( (pointer_expression "*(code *)PTR_readdir64_00146278" * (cast_expression "(code *)PTR_readdir64_00146278" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar3)" ( identifier )))) ;)) (if_statement "if (iVar4 != 0) {\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (compound_statement "{\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }" { (do_statement "do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );" do (compound_statement "{\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        }" { (expression_statement "cVar7 = *(char *)(iVar4 + 0x13);" (assignment_expression "cVar7 = *(char *)(iVar4 + 0x13)" identifier = (pointer_expression "*(char *)(iVar4 + 0x13)" * (cast_expression "(char *)(iVar4 + 0x13)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x13)" ( (binary_expression "iVar4 + 0x13" identifier + number_literal) ))))) ;) (expression_statement "pcVar14 = (char *)(iVar4 + 0x13);" (assignment_expression "pcVar14 = (char *)(iVar4 + 0x13)" identifier = (cast_expression "(char *)(iVar4 + 0x13)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x13)" ( (binary_expression "iVar4 + 0x13" identifier + number_literal) )))) ;) (expression_statement "pcVar13 = pcVar14;" (assignment_expression "pcVar13 = pcVar14" identifier = identifier) ;) (expression_statement "pcVar9 = local_2034;" (assignment_expression "pcVar9 = local_2034" identifier = identifier) ;) (expression_statement "cVar10 = local_2034[0];" (assignment_expression "cVar10 = local_2034[0]" identifier = (subscript_expression "local_2034[0]" identifier [ number_literal ])) ;) (expression_statement "cVar2 = local_2034[0];" (assignment_expression "cVar2 = local_2034[0]" identifier = (subscript_expression "local_2034[0]" identifier [ number_literal ])) ;) (if_statement "if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }" if (parenthesized_expression "(local_2034[0] == cVar7)" ( (binary_expression "local_2034[0] == cVar7" (subscript_expression "local_2034[0]" identifier [ number_literal ]) == identifier) )) (compound_statement "{\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }" { (do_statement "do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);" do (compound_statement "{\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            }" { (if_statement "if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }" if (parenthesized_expression "(cVar2 == '\0')" ( (binary_expression "cVar2 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }" { (expression_statement "(*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);" (call_expression "(*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001)" (parenthesized_expression "(*(code *)PTR___strcpy_chk_001462f4)" ( (pointer_expression "*(code *)PTR___strcpy_chk_001462f4" * (cast_expression "(code *)PTR___strcpy_chk_001462f4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&local_1030,pcVar14,0x1001)" ( (pointer_expression "&local_1030" & identifier) , identifier , number_literal ))) ;) (expression_statement "(*(code *)PTR_closedir_00146208)(iVar3);" (call_expression "(*(code *)PTR_closedir_00146208)(iVar3)" (parenthesized_expression "(*(code *)PTR_closedir_00146208)" ( (pointer_expression "*(code *)PTR_closedir_00146208" * (cast_expression "(code *)PTR_closedir_00146208" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar3)" ( identifier ))) ;) (if_statement "if (local_1030 != '.') goto LAB_000daa0c;" if (parenthesized_expression "(local_1030 != '.')" ( (binary_expression "local_1030 != '.'" identifier != (char_literal "'.'" ' character ')) )) (goto_statement "goto LAB_000daa0c;" goto statement_identifier ;)) (if_statement "if (local_102f == '\0') goto LAB_000daaec;" if (parenthesized_expression "(local_102f == '\0')" ( (binary_expression "local_102f == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000daaec;" goto statement_identifier ;)) (goto_statement "goto LAB_000daaa4;" goto statement_identifier ;) })) (expression_statement "pcVar13 = pcVar13 + 1;" (assignment_expression "pcVar13 = pcVar13 + 1" identifier = (binary_expression "pcVar13 + 1" identifier + number_literal)) ;) (expression_statement "pcVar1 = pcVar9 + 1;" (assignment_expression "pcVar1 = pcVar9 + 1" identifier = (binary_expression "pcVar9 + 1" identifier + number_literal)) ;) (expression_statement "cVar7 = *pcVar13;" (assignment_expression "cVar7 = *pcVar13" identifier = (pointer_expression "*pcVar13" * identifier)) ;) (expression_statement "pcVar9 = pcVar9 + 1;" (assignment_expression "pcVar9 = pcVar9 + 1" identifier = (binary_expression "pcVar9 + 1" identifier + number_literal)) ;) (expression_statement "cVar10 = *pcVar1;" (assignment_expression "cVar10 = *pcVar1" identifier = (pointer_expression "*pcVar1" * identifier)) ;) (expression_statement "cVar2 = cVar7;" (assignment_expression "cVar2 = cVar7" identifier = identifier) ;) }) while (parenthesized_expression "(cVar7 == *pcVar1)" ( (binary_expression "cVar7 == *pcVar1" identifier == (pointer_expression "*pcVar1" * identifier)) )) ;) })) (if_statement "if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }" if (parenthesized_expression "(cVar7 == '\0')" ( (binary_expression "cVar7 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }" { (if_statement "if (cVar10 == '\0') goto LAB_000da8c8;" if (parenthesized_expression "(cVar10 == '\0')" ( (binary_expression "cVar10 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000da8c8;" goto statement_identifier ;)) (labeled_statement "LAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);" statement_identifier : (expression_statement "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);" (assignment_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1)" identifier = (call_expression "(*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1)" (parenthesized_expression "(*(code *)PTR_strcmp_00146548)" ( (pointer_expression "*(code *)PTR_strcmp_00146548" * (cast_expression "(code *)PTR_strcmp_00146548" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar13,pcVar9 + 1)" ( identifier , (binary_expression "pcVar9 + 1" identifier + number_literal) )))) ;)) (if_statement "if (iVar4 != 0) goto LAB_000da8c8;" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000da8c8;" goto statement_identifier ;)) (labeled_statement "LAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;" statement_identifier : (if_statement "if (local_2050 == 1) goto LAB_000da8c8;" if (parenthesized_expression "(local_2050 == 1)" ( (binary_expression "local_2050 == 1" identifier == number_literal) )) (goto_statement "goto LAB_000da8c8;" goto statement_identifier ;))) (expression_statement "local_2050 = 2;" (assignment_expression "local_2050 = 2" identifier = number_literal) ;) }) (else_clause "else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }" else (compound_statement "{\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }" { (if_statement "if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }" if (parenthesized_expression "(cVar10 == '\0')" ( (binary_expression "cVar10 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }" { (expression_statement "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);" (assignment_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9)" identifier = (call_expression "(*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9)" (parenthesized_expression "(*(code *)PTR_strcmp_00146548)" ( (pointer_expression "*(code *)PTR_strcmp_00146548" * (cast_expression "(code *)PTR_strcmp_00146548" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar13 + 1,pcVar9)" ( (binary_expression "pcVar13 + 1" identifier + number_literal) , identifier )))) ;) (if_statement "if (iVar4 == 0) goto LAB_000da9a0;" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000da9a0;" goto statement_identifier ;)) (goto_statement "goto LAB_000da8c8;" goto statement_identifier ;) })) (if_statement "if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }" if (parenthesized_expression "(((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0))))))" ( (binary_expression "((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))" (parenthesized_expression "((pcVar13[1] == '\0') || (pcVar9[1] == '\0'))" ( (binary_expression "(pcVar13[1] == '\0') || (pcVar9[1] == '\0')" (parenthesized_expression "(pcVar13[1] == '\0')" ( (binary_expression "pcVar13[1] == '\0'" (subscript_expression "pcVar13[1]" identifier [ number_literal ]) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(pcVar9[1] == '\0')" ( (binary_expression "pcVar9[1] == '\0'" (subscript_expression "pcVar9[1]" identifier [ number_literal ]) == (char_literal "'\0'" ' escape_sequence ')) ))) )) || (parenthesized_expression "((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))" ( (parenthesized_expression "(pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0))))" ( (binary_expression "pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))" (binary_expression "pcVar9[1] != cVar7" (subscript_expression "pcVar9[1]" identifier [ number_literal ]) != identifier) || (parenthesized_expression "((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))" ( (parenthesized_expression "(pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0))" ( (binary_expression "pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)" (binary_expression "pcVar13[1] != cVar10" (subscript_expression "pcVar13[1]" identifier [ number_literal ]) != identifier) || (parenthesized_expression "(iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)" ( (comma_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0" (assignment_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2)" identifier = (call_expression "(*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2)" (parenthesized_expression "(*(code *)PTR_strcmp_00146548)" ( (pointer_expression "*(code *)PTR_strcmp_00146548" * (cast_expression "(code *)PTR_strcmp_00146548" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar13 + 2,pcVar9 + 2)" ( (binary_expression "pcVar13 + 2" identifier + number_literal) , (binary_expression "pcVar9 + 2" identifier + number_literal) )))) , (binary_expression "iVar4 != 0" identifier != number_literal)) ))) )) ))) )) ))) )) (compound_statement "{\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }" { (expression_statement "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);" (assignment_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1)" identifier = (call_expression "(*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1)" (parenthesized_expression "(*(code *)PTR_strcmp_00146548)" ( (pointer_expression "*(code *)PTR_strcmp_00146548" * (cast_expression "(code *)PTR_strcmp_00146548" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar13 + 1,pcVar9 + 1)" ( (binary_expression "pcVar13 + 1" identifier + number_literal) , (binary_expression "pcVar9 + 1" identifier + number_literal) )))) ;) (if_statement "if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;" if (parenthesized_expression "((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))" ( (binary_expression "(iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0)" (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0)" ( (comma_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0" (assignment_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9)" identifier = (call_expression "(*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9)" (parenthesized_expression "(*(code *)PTR_strcmp_00146548)" ( (pointer_expression "*(code *)PTR_strcmp_00146548" * (cast_expression "(code *)PTR_strcmp_00146548" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar13 + 1,pcVar9)" ( (binary_expression "pcVar13 + 1" identifier + number_literal) , identifier )))) , (binary_expression "iVar4 != 0" identifier != number_literal)) ))) )) (goto_statement "goto LAB_000da988;" goto statement_identifier ;)) (goto_statement "goto LAB_000da9a0;" goto statement_identifier ;) })) (expression_statement "local_2050 = 1;" (assignment_expression "local_2050 = 1" identifier = number_literal) ;) }))) (expression_statement "(*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);" (call_expression "(*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001)" (parenthesized_expression "(*(code *)PTR___strcpy_chk_001462f4)" ( (pointer_expression "*(code *)PTR___strcpy_chk_001462f4" * (cast_expression "(code *)PTR___strcpy_chk_001462f4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&local_1030,pcVar14,0x1001)" ( (pointer_expression "&local_1030" & identifier) , identifier , number_literal ))) ;) (expression_statement "iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);" (assignment_expression "iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3)" identifier = (call_expression "(*(code *)PTR_readdir64_00146278)(iVar3)" (parenthesized_expression "(*(code *)PTR_readdir64_00146278)" ( (pointer_expression "*(code *)PTR_readdir64_00146278" * (cast_expression "(code *)PTR_readdir64_00146278" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (iVar4 == 0) break;" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) }) while (parenthesized_expression "( true )" ( true )) ;) })) (expression_statement "(*(code *)PTR_closedir_00146208)(iVar3);" (call_expression "(*(code *)PTR_closedir_00146208)(iVar3)" (parenthesized_expression "(*(code *)PTR_closedir_00146208)" ( (pointer_expression "*(code *)PTR_closedir_00146208" * (cast_expression "(code *)PTR_closedir_00146208" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar3)" ( identifier ))) ;) (if_statement "if (local_1030 == '.') {\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }" if (parenthesized_expression "(local_1030 == '.')" ( (binary_expression "local_1030 == '.'" identifier == (char_literal "'.'" ' character ')) )) (compound_statement "{\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }" { (if_statement "if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;" if (parenthesized_expression "((local_102f == '\0') || (local_2050 == 3))" ( (binary_expression "(local_102f == '\0') || (local_2050 == 3)" (parenthesized_expression "(local_102f == '\0')" ( (binary_expression "local_102f == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(local_2050 == 3)" ( (binary_expression "local_2050 == 3" identifier == number_literal) ))) )) (goto_statement "goto LAB_000daaec;" goto statement_identifier ;)) (labeled_statement "LAB_000daaa4:\n        *pcVar12 = local_1030;" statement_identifier : (expression_statement "*pcVar12 = local_1030;" (assignment_expression "*pcVar12 = local_1030" (pointer_expression "*pcVar12" * identifier) = identifier) ;)) }) (else_clause "else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }" else (compound_statement "{\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }" { (expression_statement "uVar5 = 0xffffffff;" (assignment_expression "uVar5 = 0xffffffff" identifier = number_literal) ;) (if_statement "if (local_2050 == 3) goto LAB_000daaf0;" if (parenthesized_expression "(local_2050 == 3)" ( (binary_expression "local_2050 == 3" identifier == number_literal) )) (goto_statement "goto LAB_000daaf0;" goto statement_identifier ;)) (labeled_statement "LAB_000daa0c:\n        *pcVar12 = local_1030;" statement_identifier : (expression_statement "*pcVar12 = local_1030;" (assignment_expression "*pcVar12 = local_1030" (pointer_expression "*pcVar12" * identifier) = identifier) ;)) (if_statement "if (local_1030 == '\0') goto LAB_000da830;" if (parenthesized_expression "(local_1030 == '\0')" ( (binary_expression "local_1030 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000da830;" goto statement_identifier ;)) }))) (expression_statement "pcVar9 = &local_102f;" (assignment_expression "pcVar9 = &local_102f" identifier = (pointer_expression "&local_102f" & identifier)) ;) (expression_statement "cVar7 = local_102f;" (assignment_expression "cVar7 = local_102f" identifier = identifier) ;) (while_statement "while( true ) {\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }" { (expression_statement "pcVar12 = pcVar12 + 1;" (assignment_expression "pcVar12 = pcVar12 + 1" identifier = (binary_expression "pcVar12 + 1" identifier + number_literal)) ;) (expression_statement "*pcVar12 = cVar7;" (assignment_expression "*pcVar12 = cVar7" (pointer_expression "*pcVar12" * identifier) = identifier) ;) (expression_statement "pcVar9 = pcVar9 + 1;" (assignment_expression "pcVar9 = pcVar9 + 1" identifier = (binary_expression "pcVar9 + 1" identifier + number_literal)) ;) (if_statement "if (cVar7 == '\0') break;" if (parenthesized_expression "(cVar7 == '\0')" ( (binary_expression "cVar7 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (break_statement "break;" break ;)) (expression_statement "cVar7 = *pcVar9;" (assignment_expression "cVar7 = *pcVar9" identifier = (pointer_expression "*pcVar9" * identifier)) ;) })) (expression_statement "cVar7 = *pcVar11;" (assignment_expression "cVar7 = *pcVar11" identifier = (pointer_expression "*pcVar11" * identifier)) ;) })) (expression_statement "*pcVar12 = '/';" (assignment_expression "*pcVar12 = '/'" (pointer_expression "*pcVar12" * identifier) = (char_literal "'/'" ' character ')) ;) (expression_statement "pcVar11 = pcVar11 + 1;" (assignment_expression "pcVar11 = pcVar11 + 1" identifier = (binary_expression "pcVar11 + 1" identifier + number_literal)) ;) (expression_statement "pcVar12 = pcVar12 + 1;" (assignment_expression "pcVar12 = pcVar12 + 1" identifier = (binary_expression "pcVar12 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "( true )" ( true )) ;)) })))
(translation_unit "int spname(char *oldname,char *newname)\n\n{\n  char *pcVar1;\n  char cVar2;\n  char *oldname_00;\n  char cVar6;\n  int iVar3;\n  int iVar4;\n  uint uVar5;\n  char *pcVar7;\n  char *pcVar8;\n  char cVar9;\n  char *pcVar10;\n  char *pcVar11;\n  char *pcVar12;\n  char *pcVar13;\n  undefined *puVar14;\n  int iStack_2050;\n  char guess [4097];\n  char best [4097];\n  \n  puVar14 = PTR___stack_chk_guard_001464dc;\n  oldname_00 = *(char **)PTR___stack_chk_guard_001464dc;\n  pcVar7 = PTR_DAT_001445ac + -0x7e78;\n  pcVar10 = oldname;\n  pcVar11 = newname;\nLAB_000da830:\n  do {\n    cVar6 = *pcVar10;\n    while (cVar6 != '/') {\n      *pcVar11 = '\0';\n      cVar6 = *pcVar10;\n      if (cVar6 == '\0') {\n        if ((((oldname[1] != '\0') || (newname[1] != '\0')) || (*oldname == '.')) ||\n           (*newname != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(oldname,newname);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (oldname_00 == *(char **)puVar14) {\n          return uVar5;\n        }\n        puVar14 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar3 = (**(code **)(puVar14 + 0x6b7cc))();\n        pcVar10 = (char *)(**(code **)(puVar14 + 0x6b824))((iVar3 * 3 + 1U >> 1) + 1);\n        if ((pcVar10 != (char *)0x0) && (uVar5 = spname(oldname_00,pcVar10), 1 < uVar5)) {\n          (**(code **)(puVar14 + 0x6b938))(pcVar10);\n          return 0;\n        }\n        return (int)pcVar10;\n      }\n      pcVar8 = guess;\n      if (cVar6 != '/') {\n        do {\n          if (pcVar8 < guess + 0x1000) {\n            *pcVar8 = cVar6;\n            pcVar8 = pcVar8 + 1;\n          }\n          pcVar10 = pcVar10 + 1;\n          cVar6 = *pcVar10;\n        } while ((cVar6 != '/') && (cVar6 != '\0'));\n      }\n      *pcVar8 = '\0';\n      pcVar8 = pcVar7;\n      if (*newname != '\0') {\n        pcVar8 = newname;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar8);\n      if (iVar3 == 0) goto LAB_000daaec;\n      iStack_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar6 = *(char *)(iVar4 + 0x13);\n          pcVar13 = (char *)(iVar4 + 0x13);\n          pcVar12 = pcVar13;\n          pcVar8 = guess;\n          cVar9 = guess[0];\n          cVar2 = guess[0];\n          if (guess[0] == cVar6) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (best[0] != '.') goto LAB_000daa0c;\n                if (best[1] == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar12 = pcVar12 + 1;\n              pcVar1 = pcVar8 + 1;\n              cVar6 = *pcVar12;\n              pcVar8 = pcVar8 + 1;\n              cVar9 = *pcVar1;\n              cVar2 = cVar6;\n            } while (cVar6 == *pcVar1);\n          }\n          if (cVar6 == '\0') {\n            if (cVar9 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12,pcVar8 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (iStack_2050 == 1) goto LAB_000da8c8;\n            iStack_2050 = 2;\n          }\n          else {\n            if (cVar9 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar12[1] == '\0') || (pcVar8[1] == '\0')) ||\n               ((pcVar8[1] != cVar6 ||\n                ((pcVar12[1] != cVar9 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            iStack_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (best[0] == '.') {\n        if ((best[1] == '\0') || (iStack_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar11 = best[0];\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (iStack_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar11 = best[0];\n        if (best[0] == '\0') goto LAB_000da830;\n      }\n      pcVar8 = best + 1;\n      cVar6 = best[1];\n      while( true ) {\n        pcVar11 = pcVar11 + 1;\n        *pcVar11 = cVar6;\n        pcVar8 = pcVar8 + 1;\n        if (cVar6 == '\0') break;\n        cVar6 = *pcVar8;\n      }\n      cVar6 = *pcVar10;\n    }\n    *pcVar11 = '/';\n    pcVar10 = pcVar10 + 1;\n    pcVar11 = pcVar11 + 1;\n  } while( true );\n}\n\n" (function_definition "int spname(char *oldname,char *newname)\n\n{\n  char *pcVar1;\n  char cVar2;\n  char *oldname_00;\n  char cVar6;\n  int iVar3;\n  int iVar4;\n  uint uVar5;\n  char *pcVar7;\n  char *pcVar8;\n  char cVar9;\n  char *pcVar10;\n  char *pcVar11;\n  char *pcVar12;\n  char *pcVar13;\n  undefined *puVar14;\n  int iStack_2050;\n  char guess [4097];\n  char best [4097];\n  \n  puVar14 = PTR___stack_chk_guard_001464dc;\n  oldname_00 = *(char **)PTR___stack_chk_guard_001464dc;\n  pcVar7 = PTR_DAT_001445ac + -0x7e78;\n  pcVar10 = oldname;\n  pcVar11 = newname;\nLAB_000da830:\n  do {\n    cVar6 = *pcVar10;\n    while (cVar6 != '/') {\n      *pcVar11 = '\0';\n      cVar6 = *pcVar10;\n      if (cVar6 == '\0') {\n        if ((((oldname[1] != '\0') || (newname[1] != '\0')) || (*oldname == '.')) ||\n           (*newname != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(oldname,newname);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (oldname_00 == *(char **)puVar14) {\n          return uVar5;\n        }\n        puVar14 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar3 = (**(code **)(puVar14 + 0x6b7cc))();\n        pcVar10 = (char *)(**(code **)(puVar14 + 0x6b824))((iVar3 * 3 + 1U >> 1) + 1);\n        if ((pcVar10 != (char *)0x0) && (uVar5 = spname(oldname_00,pcVar10), 1 < uVar5)) {\n          (**(code **)(puVar14 + 0x6b938))(pcVar10);\n          return 0;\n        }\n        return (int)pcVar10;\n      }\n      pcVar8 = guess;\n      if (cVar6 != '/') {\n        do {\n          if (pcVar8 < guess + 0x1000) {\n            *pcVar8 = cVar6;\n            pcVar8 = pcVar8 + 1;\n          }\n          pcVar10 = pcVar10 + 1;\n          cVar6 = *pcVar10;\n        } while ((cVar6 != '/') && (cVar6 != '\0'));\n      }\n      *pcVar8 = '\0';\n      pcVar8 = pcVar7;\n      if (*newname != '\0') {\n        pcVar8 = newname;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar8);\n      if (iVar3 == 0) goto LAB_000daaec;\n      iStack_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar6 = *(char *)(iVar4 + 0x13);\n          pcVar13 = (char *)(iVar4 + 0x13);\n          pcVar12 = pcVar13;\n          pcVar8 = guess;\n          cVar9 = guess[0];\n          cVar2 = guess[0];\n          if (guess[0] == cVar6) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (best[0] != '.') goto LAB_000daa0c;\n                if (best[1] == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar12 = pcVar12 + 1;\n              pcVar1 = pcVar8 + 1;\n              cVar6 = *pcVar12;\n              pcVar8 = pcVar8 + 1;\n              cVar9 = *pcVar1;\n              cVar2 = cVar6;\n            } while (cVar6 == *pcVar1);\n          }\n          if (cVar6 == '\0') {\n            if (cVar9 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12,pcVar8 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (iStack_2050 == 1) goto LAB_000da8c8;\n            iStack_2050 = 2;\n          }\n          else {\n            if (cVar9 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar12[1] == '\0') || (pcVar8[1] == '\0')) ||\n               ((pcVar8[1] != cVar6 ||\n                ((pcVar12[1] != cVar9 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            iStack_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (best[0] == '.') {\n        if ((best[1] == '\0') || (iStack_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar11 = best[0];\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (iStack_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar11 = best[0];\n        if (best[0] == '\0') goto LAB_000da830;\n      }\n      pcVar8 = best + 1;\n      cVar6 = best[1];\n      while( true ) {\n        pcVar11 = pcVar11 + 1;\n        *pcVar11 = cVar6;\n        pcVar8 = pcVar8 + 1;\n        if (cVar6 == '\0') break;\n        cVar6 = *pcVar8;\n      }\n      cVar6 = *pcVar10;\n    }\n    *pcVar11 = '/';\n    pcVar10 = pcVar10 + 1;\n    pcVar11 = pcVar11 + 1;\n  } while( true );\n}" primitive_type (function_declarator "spname(char *oldname,char *newname)" identifier (parameter_list "(char *oldname,char *newname)" ( (parameter_declaration "char *oldname" primitive_type (pointer_declarator "*oldname" * identifier)) , (parameter_declaration "char *newname" primitive_type (pointer_declarator "*newname" * identifier)) ))) (compound_statement "{\n  char *pcVar1;\n  char cVar2;\n  char *oldname_00;\n  char cVar6;\n  int iVar3;\n  int iVar4;\n  uint uVar5;\n  char *pcVar7;\n  char *pcVar8;\n  char cVar9;\n  char *pcVar10;\n  char *pcVar11;\n  char *pcVar12;\n  char *pcVar13;\n  undefined *puVar14;\n  int iStack_2050;\n  char guess [4097];\n  char best [4097];\n  \n  puVar14 = PTR___stack_chk_guard_001464dc;\n  oldname_00 = *(char **)PTR___stack_chk_guard_001464dc;\n  pcVar7 = PTR_DAT_001445ac + -0x7e78;\n  pcVar10 = oldname;\n  pcVar11 = newname;\nLAB_000da830:\n  do {\n    cVar6 = *pcVar10;\n    while (cVar6 != '/') {\n      *pcVar11 = '\0';\n      cVar6 = *pcVar10;\n      if (cVar6 == '\0') {\n        if ((((oldname[1] != '\0') || (newname[1] != '\0')) || (*oldname == '.')) ||\n           (*newname != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(oldname,newname);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (oldname_00 == *(char **)puVar14) {\n          return uVar5;\n        }\n        puVar14 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar3 = (**(code **)(puVar14 + 0x6b7cc))();\n        pcVar10 = (char *)(**(code **)(puVar14 + 0x6b824))((iVar3 * 3 + 1U >> 1) + 1);\n        if ((pcVar10 != (char *)0x0) && (uVar5 = spname(oldname_00,pcVar10), 1 < uVar5)) {\n          (**(code **)(puVar14 + 0x6b938))(pcVar10);\n          return 0;\n        }\n        return (int)pcVar10;\n      }\n      pcVar8 = guess;\n      if (cVar6 != '/') {\n        do {\n          if (pcVar8 < guess + 0x1000) {\n            *pcVar8 = cVar6;\n            pcVar8 = pcVar8 + 1;\n          }\n          pcVar10 = pcVar10 + 1;\n          cVar6 = *pcVar10;\n        } while ((cVar6 != '/') && (cVar6 != '\0'));\n      }\n      *pcVar8 = '\0';\n      pcVar8 = pcVar7;\n      if (*newname != '\0') {\n        pcVar8 = newname;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar8);\n      if (iVar3 == 0) goto LAB_000daaec;\n      iStack_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar6 = *(char *)(iVar4 + 0x13);\n          pcVar13 = (char *)(iVar4 + 0x13);\n          pcVar12 = pcVar13;\n          pcVar8 = guess;\n          cVar9 = guess[0];\n          cVar2 = guess[0];\n          if (guess[0] == cVar6) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (best[0] != '.') goto LAB_000daa0c;\n                if (best[1] == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar12 = pcVar12 + 1;\n              pcVar1 = pcVar8 + 1;\n              cVar6 = *pcVar12;\n              pcVar8 = pcVar8 + 1;\n              cVar9 = *pcVar1;\n              cVar2 = cVar6;\n            } while (cVar6 == *pcVar1);\n          }\n          if (cVar6 == '\0') {\n            if (cVar9 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12,pcVar8 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (iStack_2050 == 1) goto LAB_000da8c8;\n            iStack_2050 = 2;\n          }\n          else {\n            if (cVar9 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar12[1] == '\0') || (pcVar8[1] == '\0')) ||\n               ((pcVar8[1] != cVar6 ||\n                ((pcVar12[1] != cVar9 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            iStack_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (best[0] == '.') {\n        if ((best[1] == '\0') || (iStack_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar11 = best[0];\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (iStack_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar11 = best[0];\n        if (best[0] == '\0') goto LAB_000da830;\n      }\n      pcVar8 = best + 1;\n      cVar6 = best[1];\n      while( true ) {\n        pcVar11 = pcVar11 + 1;\n        *pcVar11 = cVar6;\n        pcVar8 = pcVar8 + 1;\n        if (cVar6 == '\0') break;\n        cVar6 = *pcVar8;\n      }\n      cVar6 = *pcVar10;\n    }\n    *pcVar11 = '/';\n    pcVar10 = pcVar10 + 1;\n    pcVar11 = pcVar11 + 1;\n  } while( true );\n}" { (declaration "char *pcVar1;" primitive_type (pointer_declarator "*pcVar1" * identifier) ;) (declaration "char cVar2;" primitive_type identifier ;) (declaration "char *oldname_00;" primitive_type (pointer_declarator "*oldname_00" * identifier) ;) (declaration "char cVar6;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "char *pcVar7;" primitive_type (pointer_declarator "*pcVar7" * identifier) ;) (declaration "char *pcVar8;" primitive_type (pointer_declarator "*pcVar8" * identifier) ;) (declaration "char cVar9;" primitive_type identifier ;) (declaration "char *pcVar10;" primitive_type (pointer_declarator "*pcVar10" * identifier) ;) (declaration "char *pcVar11;" primitive_type (pointer_declarator "*pcVar11" * identifier) ;) (declaration "char *pcVar12;" primitive_type (pointer_declarator "*pcVar12" * identifier) ;) (declaration "char *pcVar13;" primitive_type (pointer_declarator "*pcVar13" * identifier) ;) (declaration "undefined *puVar14;" type_identifier (pointer_declarator "*puVar14" * identifier) ;) (declaration "int iStack_2050;" primitive_type identifier ;) (declaration "char guess [4097];" primitive_type (array_declarator "guess [4097]" identifier [ number_literal ]) ;) (declaration "char best [4097];" primitive_type (array_declarator "best [4097]" identifier [ number_literal ]) ;) (expression_statement "puVar14 = PTR___stack_chk_guard_001464dc;" (assignment_expression "puVar14 = PTR___stack_chk_guard_001464dc" identifier = identifier) ;) (expression_statement "oldname_00 = *(char **)PTR___stack_chk_guard_001464dc;" (assignment_expression "oldname_00 = *(char **)PTR___stack_chk_guard_001464dc" identifier = (pointer_expression "*(char **)PTR___stack_chk_guard_001464dc" * (cast_expression "(char **)PTR___stack_chk_guard_001464dc" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "pcVar7 = PTR_DAT_001445ac + -0x7e78;" (assignment_expression "pcVar7 = PTR_DAT_001445ac + -0x7e78" identifier = (binary_expression "PTR_DAT_001445ac + -0x7e78" identifier + number_literal)) ;) (expression_statement "pcVar10 = oldname;" (assignment_expression "pcVar10 = oldname" identifier = identifier) ;) (expression_statement "pcVar11 = newname;" (assignment_expression "pcVar11 = newname" identifier = identifier) ;) (labeled_statement "LAB_000da830:\n  do {\n    cVar6 = *pcVar10;\n    while (cVar6 != '/') {\n      *pcVar11 = '\0';\n      cVar6 = *pcVar10;\n      if (cVar6 == '\0') {\n        if ((((oldname[1] != '\0') || (newname[1] != '\0')) || (*oldname == '.')) ||\n           (*newname != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(oldname,newname);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (oldname_00 == *(char **)puVar14) {\n          return uVar5;\n        }\n        puVar14 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar3 = (**(code **)(puVar14 + 0x6b7cc))();\n        pcVar10 = (char *)(**(code **)(puVar14 + 0x6b824))((iVar3 * 3 + 1U >> 1) + 1);\n        if ((pcVar10 != (char *)0x0) && (uVar5 = spname(oldname_00,pcVar10), 1 < uVar5)) {\n          (**(code **)(puVar14 + 0x6b938))(pcVar10);\n          return 0;\n        }\n        return (int)pcVar10;\n      }\n      pcVar8 = guess;\n      if (cVar6 != '/') {\n        do {\n          if (pcVar8 < guess + 0x1000) {\n            *pcVar8 = cVar6;\n            pcVar8 = pcVar8 + 1;\n          }\n          pcVar10 = pcVar10 + 1;\n          cVar6 = *pcVar10;\n        } while ((cVar6 != '/') && (cVar6 != '\0'));\n      }\n      *pcVar8 = '\0';\n      pcVar8 = pcVar7;\n      if (*newname != '\0') {\n        pcVar8 = newname;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar8);\n      if (iVar3 == 0) goto LAB_000daaec;\n      iStack_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar6 = *(char *)(iVar4 + 0x13);\n          pcVar13 = (char *)(iVar4 + 0x13);\n          pcVar12 = pcVar13;\n          pcVar8 = guess;\n          cVar9 = guess[0];\n          cVar2 = guess[0];\n          if (guess[0] == cVar6) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (best[0] != '.') goto LAB_000daa0c;\n                if (best[1] == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar12 = pcVar12 + 1;\n              pcVar1 = pcVar8 + 1;\n              cVar6 = *pcVar12;\n              pcVar8 = pcVar8 + 1;\n              cVar9 = *pcVar1;\n              cVar2 = cVar6;\n            } while (cVar6 == *pcVar1);\n          }\n          if (cVar6 == '\0') {\n            if (cVar9 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12,pcVar8 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (iStack_2050 == 1) goto LAB_000da8c8;\n            iStack_2050 = 2;\n          }\n          else {\n            if (cVar9 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar12[1] == '\0') || (pcVar8[1] == '\0')) ||\n               ((pcVar8[1] != cVar6 ||\n                ((pcVar12[1] != cVar9 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            iStack_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (best[0] == '.') {\n        if ((best[1] == '\0') || (iStack_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar11 = best[0];\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (iStack_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar11 = best[0];\n        if (best[0] == '\0') goto LAB_000da830;\n      }\n      pcVar8 = best + 1;\n      cVar6 = best[1];\n      while( true ) {\n        pcVar11 = pcVar11 + 1;\n        *pcVar11 = cVar6;\n        pcVar8 = pcVar8 + 1;\n        if (cVar6 == '\0') break;\n        cVar6 = *pcVar8;\n      }\n      cVar6 = *pcVar10;\n    }\n    *pcVar11 = '/';\n    pcVar10 = pcVar10 + 1;\n    pcVar11 = pcVar11 + 1;\n  } while( true );" statement_identifier : (do_statement "do {\n    cVar6 = *pcVar10;\n    while (cVar6 != '/') {\n      *pcVar11 = '\0';\n      cVar6 = *pcVar10;\n      if (cVar6 == '\0') {\n        if ((((oldname[1] != '\0') || (newname[1] != '\0')) || (*oldname == '.')) ||\n           (*newname != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(oldname,newname);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (oldname_00 == *(char **)puVar14) {\n          return uVar5;\n        }\n        puVar14 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar3 = (**(code **)(puVar14 + 0x6b7cc))();\n        pcVar10 = (char *)(**(code **)(puVar14 + 0x6b824))((iVar3 * 3 + 1U >> 1) + 1);\n        if ((pcVar10 != (char *)0x0) && (uVar5 = spname(oldname_00,pcVar10), 1 < uVar5)) {\n          (**(code **)(puVar14 + 0x6b938))(pcVar10);\n          return 0;\n        }\n        return (int)pcVar10;\n      }\n      pcVar8 = guess;\n      if (cVar6 != '/') {\n        do {\n          if (pcVar8 < guess + 0x1000) {\n            *pcVar8 = cVar6;\n            pcVar8 = pcVar8 + 1;\n          }\n          pcVar10 = pcVar10 + 1;\n          cVar6 = *pcVar10;\n        } while ((cVar6 != '/') && (cVar6 != '\0'));\n      }\n      *pcVar8 = '\0';\n      pcVar8 = pcVar7;\n      if (*newname != '\0') {\n        pcVar8 = newname;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar8);\n      if (iVar3 == 0) goto LAB_000daaec;\n      iStack_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar6 = *(char *)(iVar4 + 0x13);\n          pcVar13 = (char *)(iVar4 + 0x13);\n          pcVar12 = pcVar13;\n          pcVar8 = guess;\n          cVar9 = guess[0];\n          cVar2 = guess[0];\n          if (guess[0] == cVar6) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (best[0] != '.') goto LAB_000daa0c;\n                if (best[1] == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar12 = pcVar12 + 1;\n              pcVar1 = pcVar8 + 1;\n              cVar6 = *pcVar12;\n              pcVar8 = pcVar8 + 1;\n              cVar9 = *pcVar1;\n              cVar2 = cVar6;\n            } while (cVar6 == *pcVar1);\n          }\n          if (cVar6 == '\0') {\n            if (cVar9 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12,pcVar8 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (iStack_2050 == 1) goto LAB_000da8c8;\n            iStack_2050 = 2;\n          }\n          else {\n            if (cVar9 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar12[1] == '\0') || (pcVar8[1] == '\0')) ||\n               ((pcVar8[1] != cVar6 ||\n                ((pcVar12[1] != cVar9 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            iStack_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (best[0] == '.') {\n        if ((best[1] == '\0') || (iStack_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar11 = best[0];\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (iStack_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar11 = best[0];\n        if (best[0] == '\0') goto LAB_000da830;\n      }\n      pcVar8 = best + 1;\n      cVar6 = best[1];\n      while( true ) {\n        pcVar11 = pcVar11 + 1;\n        *pcVar11 = cVar6;\n        pcVar8 = pcVar8 + 1;\n        if (cVar6 == '\0') break;\n        cVar6 = *pcVar8;\n      }\n      cVar6 = *pcVar10;\n    }\n    *pcVar11 = '/';\n    pcVar10 = pcVar10 + 1;\n    pcVar11 = pcVar11 + 1;\n  } while( true );" do (compound_statement "{\n    cVar6 = *pcVar10;\n    while (cVar6 != '/') {\n      *pcVar11 = '\0';\n      cVar6 = *pcVar10;\n      if (cVar6 == '\0') {\n        if ((((oldname[1] != '\0') || (newname[1] != '\0')) || (*oldname == '.')) ||\n           (*newname != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(oldname,newname);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (oldname_00 == *(char **)puVar14) {\n          return uVar5;\n        }\n        puVar14 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar3 = (**(code **)(puVar14 + 0x6b7cc))();\n        pcVar10 = (char *)(**(code **)(puVar14 + 0x6b824))((iVar3 * 3 + 1U >> 1) + 1);\n        if ((pcVar10 != (char *)0x0) && (uVar5 = spname(oldname_00,pcVar10), 1 < uVar5)) {\n          (**(code **)(puVar14 + 0x6b938))(pcVar10);\n          return 0;\n        }\n        return (int)pcVar10;\n      }\n      pcVar8 = guess;\n      if (cVar6 != '/') {\n        do {\n          if (pcVar8 < guess + 0x1000) {\n            *pcVar8 = cVar6;\n            pcVar8 = pcVar8 + 1;\n          }\n          pcVar10 = pcVar10 + 1;\n          cVar6 = *pcVar10;\n        } while ((cVar6 != '/') && (cVar6 != '\0'));\n      }\n      *pcVar8 = '\0';\n      pcVar8 = pcVar7;\n      if (*newname != '\0') {\n        pcVar8 = newname;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar8);\n      if (iVar3 == 0) goto LAB_000daaec;\n      iStack_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar6 = *(char *)(iVar4 + 0x13);\n          pcVar13 = (char *)(iVar4 + 0x13);\n          pcVar12 = pcVar13;\n          pcVar8 = guess;\n          cVar9 = guess[0];\n          cVar2 = guess[0];\n          if (guess[0] == cVar6) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (best[0] != '.') goto LAB_000daa0c;\n                if (best[1] == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar12 = pcVar12 + 1;\n              pcVar1 = pcVar8 + 1;\n              cVar6 = *pcVar12;\n              pcVar8 = pcVar8 + 1;\n              cVar9 = *pcVar1;\n              cVar2 = cVar6;\n            } while (cVar6 == *pcVar1);\n          }\n          if (cVar6 == '\0') {\n            if (cVar9 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12,pcVar8 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (iStack_2050 == 1) goto LAB_000da8c8;\n            iStack_2050 = 2;\n          }\n          else {\n            if (cVar9 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar12[1] == '\0') || (pcVar8[1] == '\0')) ||\n               ((pcVar8[1] != cVar6 ||\n                ((pcVar12[1] != cVar9 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            iStack_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (best[0] == '.') {\n        if ((best[1] == '\0') || (iStack_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar11 = best[0];\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (iStack_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar11 = best[0];\n        if (best[0] == '\0') goto LAB_000da830;\n      }\n      pcVar8 = best + 1;\n      cVar6 = best[1];\n      while( true ) {\n        pcVar11 = pcVar11 + 1;\n        *pcVar11 = cVar6;\n        pcVar8 = pcVar8 + 1;\n        if (cVar6 == '\0') break;\n        cVar6 = *pcVar8;\n      }\n      cVar6 = *pcVar10;\n    }\n    *pcVar11 = '/';\n    pcVar10 = pcVar10 + 1;\n    pcVar11 = pcVar11 + 1;\n  }" { (expression_statement "cVar6 = *pcVar10;" (assignment_expression "cVar6 = *pcVar10" identifier = (pointer_expression "*pcVar10" * identifier)) ;) (while_statement "while (cVar6 != '/') {\n      *pcVar11 = '\0';\n      cVar6 = *pcVar10;\n      if (cVar6 == '\0') {\n        if ((((oldname[1] != '\0') || (newname[1] != '\0')) || (*oldname == '.')) ||\n           (*newname != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(oldname,newname);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (oldname_00 == *(char **)puVar14) {\n          return uVar5;\n        }\n        puVar14 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar3 = (**(code **)(puVar14 + 0x6b7cc))();\n        pcVar10 = (char *)(**(code **)(puVar14 + 0x6b824))((iVar3 * 3 + 1U >> 1) + 1);\n        if ((pcVar10 != (char *)0x0) && (uVar5 = spname(oldname_00,pcVar10), 1 < uVar5)) {\n          (**(code **)(puVar14 + 0x6b938))(pcVar10);\n          return 0;\n        }\n        return (int)pcVar10;\n      }\n      pcVar8 = guess;\n      if (cVar6 != '/') {\n        do {\n          if (pcVar8 < guess + 0x1000) {\n            *pcVar8 = cVar6;\n            pcVar8 = pcVar8 + 1;\n          }\n          pcVar10 = pcVar10 + 1;\n          cVar6 = *pcVar10;\n        } while ((cVar6 != '/') && (cVar6 != '\0'));\n      }\n      *pcVar8 = '\0';\n      pcVar8 = pcVar7;\n      if (*newname != '\0') {\n        pcVar8 = newname;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar8);\n      if (iVar3 == 0) goto LAB_000daaec;\n      iStack_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar6 = *(char *)(iVar4 + 0x13);\n          pcVar13 = (char *)(iVar4 + 0x13);\n          pcVar12 = pcVar13;\n          pcVar8 = guess;\n          cVar9 = guess[0];\n          cVar2 = guess[0];\n          if (guess[0] == cVar6) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (best[0] != '.') goto LAB_000daa0c;\n                if (best[1] == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar12 = pcVar12 + 1;\n              pcVar1 = pcVar8 + 1;\n              cVar6 = *pcVar12;\n              pcVar8 = pcVar8 + 1;\n              cVar9 = *pcVar1;\n              cVar2 = cVar6;\n            } while (cVar6 == *pcVar1);\n          }\n          if (cVar6 == '\0') {\n            if (cVar9 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12,pcVar8 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (iStack_2050 == 1) goto LAB_000da8c8;\n            iStack_2050 = 2;\n          }\n          else {\n            if (cVar9 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar12[1] == '\0') || (pcVar8[1] == '\0')) ||\n               ((pcVar8[1] != cVar6 ||\n                ((pcVar12[1] != cVar9 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            iStack_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (best[0] == '.') {\n        if ((best[1] == '\0') || (iStack_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar11 = best[0];\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (iStack_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar11 = best[0];\n        if (best[0] == '\0') goto LAB_000da830;\n      }\n      pcVar8 = best + 1;\n      cVar6 = best[1];\n      while( true ) {\n        pcVar11 = pcVar11 + 1;\n        *pcVar11 = cVar6;\n        pcVar8 = pcVar8 + 1;\n        if (cVar6 == '\0') break;\n        cVar6 = *pcVar8;\n      }\n      cVar6 = *pcVar10;\n    }" while (parenthesized_expression "(cVar6 != '/')" ( (binary_expression "cVar6 != '/'" identifier != (char_literal "'/'" ' character ')) )) (compound_statement "{\n      *pcVar11 = '\0';\n      cVar6 = *pcVar10;\n      if (cVar6 == '\0') {\n        if ((((oldname[1] != '\0') || (newname[1] != '\0')) || (*oldname == '.')) ||\n           (*newname != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(oldname,newname);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (oldname_00 == *(char **)puVar14) {\n          return uVar5;\n        }\n        puVar14 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar3 = (**(code **)(puVar14 + 0x6b7cc))();\n        pcVar10 = (char *)(**(code **)(puVar14 + 0x6b824))((iVar3 * 3 + 1U >> 1) + 1);\n        if ((pcVar10 != (char *)0x0) && (uVar5 = spname(oldname_00,pcVar10), 1 < uVar5)) {\n          (**(code **)(puVar14 + 0x6b938))(pcVar10);\n          return 0;\n        }\n        return (int)pcVar10;\n      }\n      pcVar8 = guess;\n      if (cVar6 != '/') {\n        do {\n          if (pcVar8 < guess + 0x1000) {\n            *pcVar8 = cVar6;\n            pcVar8 = pcVar8 + 1;\n          }\n          pcVar10 = pcVar10 + 1;\n          cVar6 = *pcVar10;\n        } while ((cVar6 != '/') && (cVar6 != '\0'));\n      }\n      *pcVar8 = '\0';\n      pcVar8 = pcVar7;\n      if (*newname != '\0') {\n        pcVar8 = newname;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar8);\n      if (iVar3 == 0) goto LAB_000daaec;\n      iStack_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar6 = *(char *)(iVar4 + 0x13);\n          pcVar13 = (char *)(iVar4 + 0x13);\n          pcVar12 = pcVar13;\n          pcVar8 = guess;\n          cVar9 = guess[0];\n          cVar2 = guess[0];\n          if (guess[0] == cVar6) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (best[0] != '.') goto LAB_000daa0c;\n                if (best[1] == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar12 = pcVar12 + 1;\n              pcVar1 = pcVar8 + 1;\n              cVar6 = *pcVar12;\n              pcVar8 = pcVar8 + 1;\n              cVar9 = *pcVar1;\n              cVar2 = cVar6;\n            } while (cVar6 == *pcVar1);\n          }\n          if (cVar6 == '\0') {\n            if (cVar9 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12,pcVar8 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (iStack_2050 == 1) goto LAB_000da8c8;\n            iStack_2050 = 2;\n          }\n          else {\n            if (cVar9 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar12[1] == '\0') || (pcVar8[1] == '\0')) ||\n               ((pcVar8[1] != cVar6 ||\n                ((pcVar12[1] != cVar9 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            iStack_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (best[0] == '.') {\n        if ((best[1] == '\0') || (iStack_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar11 = best[0];\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (iStack_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar11 = best[0];\n        if (best[0] == '\0') goto LAB_000da830;\n      }\n      pcVar8 = best + 1;\n      cVar6 = best[1];\n      while( true ) {\n        pcVar11 = pcVar11 + 1;\n        *pcVar11 = cVar6;\n        pcVar8 = pcVar8 + 1;\n        if (cVar6 == '\0') break;\n        cVar6 = *pcVar8;\n      }\n      cVar6 = *pcVar10;\n    }" { (expression_statement "*pcVar11 = '\0';" (assignment_expression "*pcVar11 = '\0'" (pointer_expression "*pcVar11" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "cVar6 = *pcVar10;" (assignment_expression "cVar6 = *pcVar10" identifier = (pointer_expression "*pcVar10" * identifier)) ;) (if_statement "if (cVar6 == '\0') {\n        if ((((oldname[1] != '\0') || (newname[1] != '\0')) || (*oldname == '.')) ||\n           (*newname != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(oldname,newname);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (oldname_00 == *(char **)puVar14) {\n          return uVar5;\n        }\n        puVar14 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar3 = (**(code **)(puVar14 + 0x6b7cc))();\n        pcVar10 = (char *)(**(code **)(puVar14 + 0x6b824))((iVar3 * 3 + 1U >> 1) + 1);\n        if ((pcVar10 != (char *)0x0) && (uVar5 = spname(oldname_00,pcVar10), 1 < uVar5)) {\n          (**(code **)(puVar14 + 0x6b938))(pcVar10);\n          return 0;\n        }\n        return (int)pcVar10;\n      }" if (parenthesized_expression "(cVar6 == '\0')" ( (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        if ((((oldname[1] != '\0') || (newname[1] != '\0')) || (*oldname == '.')) ||\n           (*newname != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(oldname,newname);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (oldname_00 == *(char **)puVar14) {\n          return uVar5;\n        }\n        puVar14 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar3 = (**(code **)(puVar14 + 0x6b7cc))();\n        pcVar10 = (char *)(**(code **)(puVar14 + 0x6b824))((iVar3 * 3 + 1U >> 1) + 1);\n        if ((pcVar10 != (char *)0x0) && (uVar5 = spname(oldname_00,pcVar10), 1 < uVar5)) {\n          (**(code **)(puVar14 + 0x6b938))(pcVar10);\n          return 0;\n        }\n        return (int)pcVar10;\n      }" { (if_statement "if ((((oldname[1] != '\0') || (newname[1] != '\0')) || (*oldname == '.')) ||\n           (*newname != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(oldname,newname);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }" if (parenthesized_expression "((((oldname[1] != '\0') || (newname[1] != '\0')) || (*oldname == '.')) ||\n           (*newname != '.'))" ( (binary_expression "(((oldname[1] != '\0') || (newname[1] != '\0')) || (*oldname == '.')) ||\n           (*newname != '.')" (parenthesized_expression "(((oldname[1] != '\0') || (newname[1] != '\0')) || (*oldname == '.'))" ( (binary_expression "((oldname[1] != '\0') || (newname[1] != '\0')) || (*oldname == '.')" (parenthesized_expression "((oldname[1] != '\0') || (newname[1] != '\0'))" ( (binary_expression "(oldname[1] != '\0') || (newname[1] != '\0')" (parenthesized_expression "(oldname[1] != '\0')" ( (binary_expression "oldname[1] != '\0'" (subscript_expression "oldname[1]" identifier [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(newname[1] != '\0')" ( (binary_expression "newname[1] != '\0'" (subscript_expression "newname[1]" identifier [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) ))) )) || (parenthesized_expression "(*oldname == '.')" ( (binary_expression "*oldname == '.'" (pointer_expression "*oldname" * identifier) == (char_literal "'.'" ' character ')) ))) )) || (parenthesized_expression "(*newname != '.')" ( (binary_expression "*newname != '.'" (pointer_expression "*newname" * identifier) != (char_literal "'.'" ' character ')) ))) )) (compound_statement "{\n          iVar3 = (*(code *)PTR_strcmp_00146548)(oldname,newname);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }" { (expression_statement "iVar3 = (*(code *)PTR_strcmp_00146548)(oldname,newname);" (assignment_expression "iVar3 = (*(code *)PTR_strcmp_00146548)(oldname,newname)" identifier = (call_expression "(*(code *)PTR_strcmp_00146548)(oldname,newname)" (parenthesized_expression "(*(code *)PTR_strcmp_00146548)" ( (pointer_expression "*(code *)PTR_strcmp_00146548" * (cast_expression "(code *)PTR_strcmp_00146548" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(oldname,newname)" ( identifier , identifier )))) ;) (expression_statement "uVar5 = (uint)(iVar3 != 0);" (assignment_expression "uVar5 = (uint)(iVar3 != 0)" identifier = (call_expression "(uint)(iVar3 != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )))) ;) (goto_statement "goto LAB_000daaf0;" goto statement_identifier ;) })) (labeled_statement "LAB_000daaec:\n        uVar5 = 0xffffffff;" statement_identifier : (expression_statement "uVar5 = 0xffffffff;" (assignment_expression "uVar5 = 0xffffffff" identifier = number_literal) ;)) (labeled_statement "LAB_000daaf0:\n        if (oldname_00 == *(char **)puVar14) {\n          return uVar5;\n        }" statement_identifier : (if_statement "if (oldname_00 == *(char **)puVar14) {\n          return uVar5;\n        }" if (parenthesized_expression "(oldname_00 == *(char **)puVar14)" ( (binary_expression "oldname_00 == *(char **)puVar14" identifier == (pointer_expression "*(char **)puVar14" * (cast_expression "(char **)puVar14" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) )) (compound_statement "{\n          return uVar5;\n        }" { (return_statement "return uVar5;" return identifier ;) }))) (expression_statement "puVar14 = PTR___stack_chk_fail_00146488;" (assignment_expression "puVar14 = PTR___stack_chk_fail_00146488" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_00146488)();" (call_expression "(*(code *)PTR___stack_chk_fail_00146488)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_00146488)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_00146488" * (cast_expression "(code *)PTR___stack_chk_fail_00146488" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "iVar3 = (**(code **)(puVar14 + 0x6b7cc))();" (assignment_expression "iVar3 = (**(code **)(puVar14 + 0x6b7cc))()" identifier = (call_expression "(**(code **)(puVar14 + 0x6b7cc))()" (parenthesized_expression "(**(code **)(puVar14 + 0x6b7cc))" ( (pointer_expression "**(code **)(puVar14 + 0x6b7cc)" * (pointer_expression "*(code **)(puVar14 + 0x6b7cc)" * (cast_expression "(code **)(puVar14 + 0x6b7cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar14 + 0x6b7cc)" ( (binary_expression "puVar14 + 0x6b7cc" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "pcVar10 = (char *)(**(code **)(puVar14 + 0x6b824))((iVar3 * 3 + 1U >> 1) + 1);" (assignment_expression "pcVar10 = (char *)(**(code **)(puVar14 + 0x6b824))((iVar3 * 3 + 1U >> 1) + 1)" identifier = (cast_expression "(char *)(**(code **)(puVar14 + 0x6b824))((iVar3 * 3 + 1U >> 1) + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar14 + 0x6b824))((iVar3 * 3 + 1U >> 1) + 1)" (parenthesized_expression "(**(code **)(puVar14 + 0x6b824))" ( (pointer_expression "**(code **)(puVar14 + 0x6b824)" * (pointer_expression "*(code **)(puVar14 + 0x6b824)" * (cast_expression "(code **)(puVar14 + 0x6b824)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar14 + 0x6b824)" ( (binary_expression "puVar14 + 0x6b824" identifier + number_literal) ))))) )) (argument_list "((iVar3 * 3 + 1U >> 1) + 1)" ( (binary_expression "(iVar3 * 3 + 1U >> 1) + 1" (parenthesized_expression "(iVar3 * 3 + 1U >> 1)" ( (binary_expression "iVar3 * 3 + 1U >> 1" (binary_expression "iVar3 * 3 + 1U" (binary_expression "iVar3 * 3" identifier * number_literal) + number_literal) >> number_literal) )) + number_literal) ))))) ;) (if_statement "if ((pcVar10 != (char *)0x0) && (uVar5 = spname(oldname_00,pcVar10), 1 < uVar5)) {\n          (**(code **)(puVar14 + 0x6b938))(pcVar10);\n          return 0;\n        }" if (parenthesized_expression "((pcVar10 != (char *)0x0) && (uVar5 = spname(oldname_00,pcVar10), 1 < uVar5))" ( (binary_expression "(pcVar10 != (char *)0x0) && (uVar5 = spname(oldname_00,pcVar10), 1 < uVar5)" (parenthesized_expression "(pcVar10 != (char *)0x0)" ( (binary_expression "pcVar10 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(uVar5 = spname(oldname_00,pcVar10), 1 < uVar5)" ( (comma_expression "uVar5 = spname(oldname_00,pcVar10), 1 < uVar5" (assignment_expression "uVar5 = spname(oldname_00,pcVar10)" identifier = (call_expression "spname(oldname_00,pcVar10)" identifier (argument_list "(oldname_00,pcVar10)" ( identifier , identifier )))) , (binary_expression "1 < uVar5" number_literal < identifier)) ))) )) (compound_statement "{\n          (**(code **)(puVar14 + 0x6b938))(pcVar10);\n          return 0;\n        }" { (expression_statement "(**(code **)(puVar14 + 0x6b938))(pcVar10);" (call_expression "(**(code **)(puVar14 + 0x6b938))(pcVar10)" (parenthesized_expression "(**(code **)(puVar14 + 0x6b938))" ( (pointer_expression "**(code **)(puVar14 + 0x6b938)" * (pointer_expression "*(code **)(puVar14 + 0x6b938)" * (cast_expression "(code **)(puVar14 + 0x6b938)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar14 + 0x6b938)" ( (binary_expression "puVar14 + 0x6b938" identifier + number_literal) ))))) )) (argument_list "(pcVar10)" ( identifier ))) ;) (return_statement "return 0;" return number_literal ;) })) (return_statement "return (int)pcVar10;" return (cast_expression "(int)pcVar10" ( (type_descriptor "int" primitive_type) ) identifier) ;) })) (expression_statement "pcVar8 = guess;" (assignment_expression "pcVar8 = guess" identifier = identifier) ;) (if_statement "if (cVar6 != '/') {\n        do {\n          if (pcVar8 < guess + 0x1000) {\n            *pcVar8 = cVar6;\n            pcVar8 = pcVar8 + 1;\n          }\n          pcVar10 = pcVar10 + 1;\n          cVar6 = *pcVar10;\n        } while ((cVar6 != '/') && (cVar6 != '\0'));\n      }" if (parenthesized_expression "(cVar6 != '/')" ( (binary_expression "cVar6 != '/'" identifier != (char_literal "'/'" ' character ')) )) (compound_statement "{\n        do {\n          if (pcVar8 < guess + 0x1000) {\n            *pcVar8 = cVar6;\n            pcVar8 = pcVar8 + 1;\n          }\n          pcVar10 = pcVar10 + 1;\n          cVar6 = *pcVar10;\n        } while ((cVar6 != '/') && (cVar6 != '\0'));\n      }" { (do_statement "do {\n          if (pcVar8 < guess + 0x1000) {\n            *pcVar8 = cVar6;\n            pcVar8 = pcVar8 + 1;\n          }\n          pcVar10 = pcVar10 + 1;\n          cVar6 = *pcVar10;\n        } while ((cVar6 != '/') && (cVar6 != '\0'));" do (compound_statement "{\n          if (pcVar8 < guess + 0x1000) {\n            *pcVar8 = cVar6;\n            pcVar8 = pcVar8 + 1;\n          }\n          pcVar10 = pcVar10 + 1;\n          cVar6 = *pcVar10;\n        }" { (if_statement "if (pcVar8 < guess + 0x1000) {\n            *pcVar8 = cVar6;\n            pcVar8 = pcVar8 + 1;\n          }" if (parenthesized_expression "(pcVar8 < guess + 0x1000)" ( (binary_expression "pcVar8 < guess + 0x1000" identifier < (binary_expression "guess + 0x1000" identifier + number_literal)) )) (compound_statement "{\n            *pcVar8 = cVar6;\n            pcVar8 = pcVar8 + 1;\n          }" { (expression_statement "*pcVar8 = cVar6;" (assignment_expression "*pcVar8 = cVar6" (pointer_expression "*pcVar8" * identifier) = identifier) ;) (expression_statement "pcVar8 = pcVar8 + 1;" (assignment_expression "pcVar8 = pcVar8 + 1" identifier = (binary_expression "pcVar8 + 1" identifier + number_literal)) ;) })) (expression_statement "pcVar10 = pcVar10 + 1;" (assignment_expression "pcVar10 = pcVar10 + 1" identifier = (binary_expression "pcVar10 + 1" identifier + number_literal)) ;) (expression_statement "cVar6 = *pcVar10;" (assignment_expression "cVar6 = *pcVar10" identifier = (pointer_expression "*pcVar10" * identifier)) ;) }) while (parenthesized_expression "((cVar6 != '/') && (cVar6 != '\0'))" ( (binary_expression "(cVar6 != '/') && (cVar6 != '\0')" (parenthesized_expression "(cVar6 != '/')" ( (binary_expression "cVar6 != '/'" identifier != (char_literal "'/'" ' character ')) )) && (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) ))) )) ;) })) (expression_statement "*pcVar8 = '\0';" (assignment_expression "*pcVar8 = '\0'" (pointer_expression "*pcVar8" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar8 = pcVar7;" (assignment_expression "pcVar8 = pcVar7" identifier = identifier) ;) (if_statement "if (*newname != '\0') {\n        pcVar8 = newname;\n      }" if (parenthesized_expression "(*newname != '\0')" ( (binary_expression "*newname != '\0'" (pointer_expression "*newname" * identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        pcVar8 = newname;\n      }" { (expression_statement "pcVar8 = newname;" (assignment_expression "pcVar8 = newname" identifier = identifier) ;) })) (expression_statement "iVar3 = (*(code *)PTR_opendir_00146204)(pcVar8);" (assignment_expression "iVar3 = (*(code *)PTR_opendir_00146204)(pcVar8)" identifier = (call_expression "(*(code *)PTR_opendir_00146204)(pcVar8)" (parenthesized_expression "(*(code *)PTR_opendir_00146204)" ( (pointer_expression "*(code *)PTR_opendir_00146204" * (cast_expression "(code *)PTR_opendir_00146204" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar8)" ( identifier )))) ;) (if_statement "if (iVar3 == 0) goto LAB_000daaec;" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000daaec;" goto statement_identifier ;)) (expression_statement "iStack_2050 = 3;" (assignment_expression "iStack_2050 = 3" identifier = number_literal) ;) (labeled_statement "LAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);" statement_identifier : (expression_statement "iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);" (assignment_expression "iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3)" identifier = (call_expression "(*(code *)PTR_readdir64_00146278)(iVar3)" (parenthesized_expression "(*(code *)PTR_readdir64_00146278)" ( (pointer_expression "*(code *)PTR_readdir64_00146278" * (cast_expression "(code *)PTR_readdir64_00146278" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar3)" ( identifier )))) ;)) (if_statement "if (iVar4 != 0) {\n        do {\n          cVar6 = *(char *)(iVar4 + 0x13);\n          pcVar13 = (char *)(iVar4 + 0x13);\n          pcVar12 = pcVar13;\n          pcVar8 = guess;\n          cVar9 = guess[0];\n          cVar2 = guess[0];\n          if (guess[0] == cVar6) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (best[0] != '.') goto LAB_000daa0c;\n                if (best[1] == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar12 = pcVar12 + 1;\n              pcVar1 = pcVar8 + 1;\n              cVar6 = *pcVar12;\n              pcVar8 = pcVar8 + 1;\n              cVar9 = *pcVar1;\n              cVar2 = cVar6;\n            } while (cVar6 == *pcVar1);\n          }\n          if (cVar6 == '\0') {\n            if (cVar9 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12,pcVar8 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (iStack_2050 == 1) goto LAB_000da8c8;\n            iStack_2050 = 2;\n          }\n          else {\n            if (cVar9 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar12[1] == '\0') || (pcVar8[1] == '\0')) ||\n               ((pcVar8[1] != cVar6 ||\n                ((pcVar12[1] != cVar9 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            iStack_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (compound_statement "{\n        do {\n          cVar6 = *(char *)(iVar4 + 0x13);\n          pcVar13 = (char *)(iVar4 + 0x13);\n          pcVar12 = pcVar13;\n          pcVar8 = guess;\n          cVar9 = guess[0];\n          cVar2 = guess[0];\n          if (guess[0] == cVar6) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (best[0] != '.') goto LAB_000daa0c;\n                if (best[1] == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar12 = pcVar12 + 1;\n              pcVar1 = pcVar8 + 1;\n              cVar6 = *pcVar12;\n              pcVar8 = pcVar8 + 1;\n              cVar9 = *pcVar1;\n              cVar2 = cVar6;\n            } while (cVar6 == *pcVar1);\n          }\n          if (cVar6 == '\0') {\n            if (cVar9 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12,pcVar8 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (iStack_2050 == 1) goto LAB_000da8c8;\n            iStack_2050 = 2;\n          }\n          else {\n            if (cVar9 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar12[1] == '\0') || (pcVar8[1] == '\0')) ||\n               ((pcVar8[1] != cVar6 ||\n                ((pcVar12[1] != cVar9 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            iStack_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }" { (do_statement "do {\n          cVar6 = *(char *)(iVar4 + 0x13);\n          pcVar13 = (char *)(iVar4 + 0x13);\n          pcVar12 = pcVar13;\n          pcVar8 = guess;\n          cVar9 = guess[0];\n          cVar2 = guess[0];\n          if (guess[0] == cVar6) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (best[0] != '.') goto LAB_000daa0c;\n                if (best[1] == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar12 = pcVar12 + 1;\n              pcVar1 = pcVar8 + 1;\n              cVar6 = *pcVar12;\n              pcVar8 = pcVar8 + 1;\n              cVar9 = *pcVar1;\n              cVar2 = cVar6;\n            } while (cVar6 == *pcVar1);\n          }\n          if (cVar6 == '\0') {\n            if (cVar9 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12,pcVar8 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (iStack_2050 == 1) goto LAB_000da8c8;\n            iStack_2050 = 2;\n          }\n          else {\n            if (cVar9 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar12[1] == '\0') || (pcVar8[1] == '\0')) ||\n               ((pcVar8[1] != cVar6 ||\n                ((pcVar12[1] != cVar9 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            iStack_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );" do (compound_statement "{\n          cVar6 = *(char *)(iVar4 + 0x13);\n          pcVar13 = (char *)(iVar4 + 0x13);\n          pcVar12 = pcVar13;\n          pcVar8 = guess;\n          cVar9 = guess[0];\n          cVar2 = guess[0];\n          if (guess[0] == cVar6) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (best[0] != '.') goto LAB_000daa0c;\n                if (best[1] == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar12 = pcVar12 + 1;\n              pcVar1 = pcVar8 + 1;\n              cVar6 = *pcVar12;\n              pcVar8 = pcVar8 + 1;\n              cVar9 = *pcVar1;\n              cVar2 = cVar6;\n            } while (cVar6 == *pcVar1);\n          }\n          if (cVar6 == '\0') {\n            if (cVar9 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12,pcVar8 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (iStack_2050 == 1) goto LAB_000da8c8;\n            iStack_2050 = 2;\n          }\n          else {\n            if (cVar9 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar12[1] == '\0') || (pcVar8[1] == '\0')) ||\n               ((pcVar8[1] != cVar6 ||\n                ((pcVar12[1] != cVar9 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            iStack_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        }" { (expression_statement "cVar6 = *(char *)(iVar4 + 0x13);" (assignment_expression "cVar6 = *(char *)(iVar4 + 0x13)" identifier = (pointer_expression "*(char *)(iVar4 + 0x13)" * (cast_expression "(char *)(iVar4 + 0x13)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x13)" ( (binary_expression "iVar4 + 0x13" identifier + number_literal) ))))) ;) (expression_statement "pcVar13 = (char *)(iVar4 + 0x13);" (assignment_expression "pcVar13 = (char *)(iVar4 + 0x13)" identifier = (cast_expression "(char *)(iVar4 + 0x13)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x13)" ( (binary_expression "iVar4 + 0x13" identifier + number_literal) )))) ;) (expression_statement "pcVar12 = pcVar13;" (assignment_expression "pcVar12 = pcVar13" identifier = identifier) ;) (expression_statement "pcVar8 = guess;" (assignment_expression "pcVar8 = guess" identifier = identifier) ;) (expression_statement "cVar9 = guess[0];" (assignment_expression "cVar9 = guess[0]" identifier = (subscript_expression "guess[0]" identifier [ number_literal ])) ;) (expression_statement "cVar2 = guess[0];" (assignment_expression "cVar2 = guess[0]" identifier = (subscript_expression "guess[0]" identifier [ number_literal ])) ;) (if_statement "if (guess[0] == cVar6) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (best[0] != '.') goto LAB_000daa0c;\n                if (best[1] == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar12 = pcVar12 + 1;\n              pcVar1 = pcVar8 + 1;\n              cVar6 = *pcVar12;\n              pcVar8 = pcVar8 + 1;\n              cVar9 = *pcVar1;\n              cVar2 = cVar6;\n            } while (cVar6 == *pcVar1);\n          }" if (parenthesized_expression "(guess[0] == cVar6)" ( (binary_expression "guess[0] == cVar6" (subscript_expression "guess[0]" identifier [ number_literal ]) == identifier) )) (compound_statement "{\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (best[0] != '.') goto LAB_000daa0c;\n                if (best[1] == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar12 = pcVar12 + 1;\n              pcVar1 = pcVar8 + 1;\n              cVar6 = *pcVar12;\n              pcVar8 = pcVar8 + 1;\n              cVar9 = *pcVar1;\n              cVar2 = cVar6;\n            } while (cVar6 == *pcVar1);\n          }" { (do_statement "do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (best[0] != '.') goto LAB_000daa0c;\n                if (best[1] == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar12 = pcVar12 + 1;\n              pcVar1 = pcVar8 + 1;\n              cVar6 = *pcVar12;\n              pcVar8 = pcVar8 + 1;\n              cVar9 = *pcVar1;\n              cVar2 = cVar6;\n            } while (cVar6 == *pcVar1);" do (compound_statement "{\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (best[0] != '.') goto LAB_000daa0c;\n                if (best[1] == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar12 = pcVar12 + 1;\n              pcVar1 = pcVar8 + 1;\n              cVar6 = *pcVar12;\n              pcVar8 = pcVar8 + 1;\n              cVar9 = *pcVar1;\n              cVar2 = cVar6;\n            }" { (if_statement "if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (best[0] != '.') goto LAB_000daa0c;\n                if (best[1] == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }" if (parenthesized_expression "(cVar2 == '\0')" ( (binary_expression "cVar2 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                (*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (best[0] != '.') goto LAB_000daa0c;\n                if (best[1] == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }" { (expression_statement "(*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);" (call_expression "(*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001)" (parenthesized_expression "(*(code *)PTR___strcpy_chk_001462f4)" ( (pointer_expression "*(code *)PTR___strcpy_chk_001462f4" * (cast_expression "(code *)PTR___strcpy_chk_001462f4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(best,pcVar13,0x1001)" ( identifier , identifier , number_literal ))) ;) (expression_statement "(*(code *)PTR_closedir_00146208)(iVar3);" (call_expression "(*(code *)PTR_closedir_00146208)(iVar3)" (parenthesized_expression "(*(code *)PTR_closedir_00146208)" ( (pointer_expression "*(code *)PTR_closedir_00146208" * (cast_expression "(code *)PTR_closedir_00146208" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar3)" ( identifier ))) ;) (if_statement "if (best[0] != '.') goto LAB_000daa0c;" if (parenthesized_expression "(best[0] != '.')" ( (binary_expression "best[0] != '.'" (subscript_expression "best[0]" identifier [ number_literal ]) != (char_literal "'.'" ' character ')) )) (goto_statement "goto LAB_000daa0c;" goto statement_identifier ;)) (if_statement "if (best[1] == '\0') goto LAB_000daaec;" if (parenthesized_expression "(best[1] == '\0')" ( (binary_expression "best[1] == '\0'" (subscript_expression "best[1]" identifier [ number_literal ]) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000daaec;" goto statement_identifier ;)) (goto_statement "goto LAB_000daaa4;" goto statement_identifier ;) })) (expression_statement "pcVar12 = pcVar12 + 1;" (assignment_expression "pcVar12 = pcVar12 + 1" identifier = (binary_expression "pcVar12 + 1" identifier + number_literal)) ;) (expression_statement "pcVar1 = pcVar8 + 1;" (assignment_expression "pcVar1 = pcVar8 + 1" identifier = (binary_expression "pcVar8 + 1" identifier + number_literal)) ;) (expression_statement "cVar6 = *pcVar12;" (assignment_expression "cVar6 = *pcVar12" identifier = (pointer_expression "*pcVar12" * identifier)) ;) (expression_statement "pcVar8 = pcVar8 + 1;" (assignment_expression "pcVar8 = pcVar8 + 1" identifier = (binary_expression "pcVar8 + 1" identifier + number_literal)) ;) (expression_statement "cVar9 = *pcVar1;" (assignment_expression "cVar9 = *pcVar1" identifier = (pointer_expression "*pcVar1" * identifier)) ;) (expression_statement "cVar2 = cVar6;" (assignment_expression "cVar2 = cVar6" identifier = identifier) ;) }) while (parenthesized_expression "(cVar6 == *pcVar1)" ( (binary_expression "cVar6 == *pcVar1" identifier == (pointer_expression "*pcVar1" * identifier)) )) ;) })) (if_statement "if (cVar6 == '\0') {\n            if (cVar9 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12,pcVar8 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (iStack_2050 == 1) goto LAB_000da8c8;\n            iStack_2050 = 2;\n          }\n          else {\n            if (cVar9 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar12[1] == '\0') || (pcVar8[1] == '\0')) ||\n               ((pcVar8[1] != cVar6 ||\n                ((pcVar12[1] != cVar9 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            iStack_2050 = 1;\n          }" if (parenthesized_expression "(cVar6 == '\0')" ( (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            if (cVar9 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12,pcVar8 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (iStack_2050 == 1) goto LAB_000da8c8;\n            iStack_2050 = 2;\n          }" { (if_statement "if (cVar9 == '\0') goto LAB_000da8c8;" if (parenthesized_expression "(cVar9 == '\0')" ( (binary_expression "cVar9 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000da8c8;" goto statement_identifier ;)) (labeled_statement "LAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12,pcVar8 + 1);" statement_identifier : (expression_statement "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12,pcVar8 + 1);" (assignment_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12,pcVar8 + 1)" identifier = (call_expression "(*(code *)PTR_strcmp_00146548)(pcVar12,pcVar8 + 1)" (parenthesized_expression "(*(code *)PTR_strcmp_00146548)" ( (pointer_expression "*(code *)PTR_strcmp_00146548" * (cast_expression "(code *)PTR_strcmp_00146548" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar12,pcVar8 + 1)" ( identifier , (binary_expression "pcVar8 + 1" identifier + number_literal) )))) ;)) (if_statement "if (iVar4 != 0) goto LAB_000da8c8;" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000da8c8;" goto statement_identifier ;)) (labeled_statement "LAB_000da9a0:\n            if (iStack_2050 == 1) goto LAB_000da8c8;" statement_identifier : (if_statement "if (iStack_2050 == 1) goto LAB_000da8c8;" if (parenthesized_expression "(iStack_2050 == 1)" ( (binary_expression "iStack_2050 == 1" identifier == number_literal) )) (goto_statement "goto LAB_000da8c8;" goto statement_identifier ;))) (expression_statement "iStack_2050 = 2;" (assignment_expression "iStack_2050 = 2" identifier = number_literal) ;) }) (else_clause "else {\n            if (cVar9 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar12[1] == '\0') || (pcVar8[1] == '\0')) ||\n               ((pcVar8[1] != cVar6 ||\n                ((pcVar12[1] != cVar9 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            iStack_2050 = 1;\n          }" else (compound_statement "{\n            if (cVar9 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar12[1] == '\0') || (pcVar8[1] == '\0')) ||\n               ((pcVar8[1] != cVar6 ||\n                ((pcVar12[1] != cVar9 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            iStack_2050 = 1;\n          }" { (if_statement "if (cVar9 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }" if (parenthesized_expression "(cVar9 == '\0')" ( (binary_expression "cVar9 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }" { (expression_statement "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8);" (assignment_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8)" identifier = (call_expression "(*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8)" (parenthesized_expression "(*(code *)PTR_strcmp_00146548)" ( (pointer_expression "*(code *)PTR_strcmp_00146548" * (cast_expression "(code *)PTR_strcmp_00146548" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar12 + 1,pcVar8)" ( (binary_expression "pcVar12 + 1" identifier + number_literal) , identifier )))) ;) (if_statement "if (iVar4 == 0) goto LAB_000da9a0;" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000da9a0;" goto statement_identifier ;)) (goto_statement "goto LAB_000da8c8;" goto statement_identifier ;) })) (if_statement "if (((pcVar12[1] == '\0') || (pcVar8[1] == '\0')) ||\n               ((pcVar8[1] != cVar6 ||\n                ((pcVar12[1] != cVar9 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }" if (parenthesized_expression "(((pcVar12[1] == '\0') || (pcVar8[1] == '\0')) ||\n               ((pcVar8[1] != cVar6 ||\n                ((pcVar12[1] != cVar9 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0))))))" ( (binary_expression "((pcVar12[1] == '\0') || (pcVar8[1] == '\0')) ||\n               ((pcVar8[1] != cVar6 ||\n                ((pcVar12[1] != cVar9 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0)))))" (parenthesized_expression "((pcVar12[1] == '\0') || (pcVar8[1] == '\0'))" ( (binary_expression "(pcVar12[1] == '\0') || (pcVar8[1] == '\0')" (parenthesized_expression "(pcVar12[1] == '\0')" ( (binary_expression "pcVar12[1] == '\0'" (subscript_expression "pcVar12[1]" identifier [ number_literal ]) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(pcVar8[1] == '\0')" ( (binary_expression "pcVar8[1] == '\0'" (subscript_expression "pcVar8[1]" identifier [ number_literal ]) == (char_literal "'\0'" ' escape_sequence ')) ))) )) || (parenthesized_expression "((pcVar8[1] != cVar6 ||\n                ((pcVar12[1] != cVar9 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0)))))" ( (parenthesized_expression "(pcVar8[1] != cVar6 ||\n                ((pcVar12[1] != cVar9 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0))))" ( (binary_expression "pcVar8[1] != cVar6 ||\n                ((pcVar12[1] != cVar9 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0)))" (binary_expression "pcVar8[1] != cVar6" (subscript_expression "pcVar8[1]" identifier [ number_literal ]) != identifier) || (parenthesized_expression "((pcVar12[1] != cVar9 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0)))" ( (parenthesized_expression "(pcVar12[1] != cVar9 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0))" ( (binary_expression "pcVar12[1] != cVar9 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0)" (binary_expression "pcVar12[1] != cVar9" (subscript_expression "pcVar12[1]" identifier [ number_literal ]) != identifier) || (parenthesized_expression "(iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0)" ( (comma_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2), iVar4 != 0" (assignment_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2)" identifier = (call_expression "(*(code *)PTR_strcmp_00146548)(pcVar12 + 2,pcVar8 + 2)" (parenthesized_expression "(*(code *)PTR_strcmp_00146548)" ( (pointer_expression "*(code *)PTR_strcmp_00146548" * (cast_expression "(code *)PTR_strcmp_00146548" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar12 + 2,pcVar8 + 2)" ( (binary_expression "pcVar12 + 2" identifier + number_literal) , (binary_expression "pcVar8 + 2" identifier + number_literal) )))) , (binary_expression "iVar4 != 0" identifier != number_literal)) ))) )) ))) )) ))) )) (compound_statement "{\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }" { (expression_statement "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8 + 1);" (assignment_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8 + 1)" identifier = (call_expression "(*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8 + 1)" (parenthesized_expression "(*(code *)PTR_strcmp_00146548)" ( (pointer_expression "*(code *)PTR_strcmp_00146548" * (cast_expression "(code *)PTR_strcmp_00146548" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar12 + 1,pcVar8 + 1)" ( (binary_expression "pcVar12 + 1" identifier + number_literal) , (binary_expression "pcVar8 + 1" identifier + number_literal) )))) ;) (if_statement "if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8), iVar4 != 0))\n              goto LAB_000da988;" if (parenthesized_expression "((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8), iVar4 != 0))" ( (binary_expression "(iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8), iVar4 != 0)" (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8), iVar4 != 0)" ( (comma_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8), iVar4 != 0" (assignment_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8)" identifier = (call_expression "(*(code *)PTR_strcmp_00146548)(pcVar12 + 1,pcVar8)" (parenthesized_expression "(*(code *)PTR_strcmp_00146548)" ( (pointer_expression "*(code *)PTR_strcmp_00146548" * (cast_expression "(code *)PTR_strcmp_00146548" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar12 + 1,pcVar8)" ( (binary_expression "pcVar12 + 1" identifier + number_literal) , identifier )))) , (binary_expression "iVar4 != 0" identifier != number_literal)) ))) )) (goto_statement "goto LAB_000da988;" goto statement_identifier ;)) (goto_statement "goto LAB_000da9a0;" goto statement_identifier ;) })) (expression_statement "iStack_2050 = 1;" (assignment_expression "iStack_2050 = 1" identifier = number_literal) ;) }))) (expression_statement "(*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001);" (call_expression "(*(code *)PTR___strcpy_chk_001462f4)(best,pcVar13,0x1001)" (parenthesized_expression "(*(code *)PTR___strcpy_chk_001462f4)" ( (pointer_expression "*(code *)PTR___strcpy_chk_001462f4" * (cast_expression "(code *)PTR___strcpy_chk_001462f4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(best,pcVar13,0x1001)" ( identifier , identifier , number_literal ))) ;) (expression_statement "iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);" (assignment_expression "iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3)" identifier = (call_expression "(*(code *)PTR_readdir64_00146278)(iVar3)" (parenthesized_expression "(*(code *)PTR_readdir64_00146278)" ( (pointer_expression "*(code *)PTR_readdir64_00146278" * (cast_expression "(code *)PTR_readdir64_00146278" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (iVar4 == 0) break;" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) }) while (parenthesized_expression "( true )" ( true )) ;) })) (expression_statement "(*(code *)PTR_closedir_00146208)(iVar3);" (call_expression "(*(code *)PTR_closedir_00146208)(iVar3)" (parenthesized_expression "(*(code *)PTR_closedir_00146208)" ( (pointer_expression "*(code *)PTR_closedir_00146208" * (cast_expression "(code *)PTR_closedir_00146208" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar3)" ( identifier ))) ;) (if_statement "if (best[0] == '.') {\n        if ((best[1] == '\0') || (iStack_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar11 = best[0];\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (iStack_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar11 = best[0];\n        if (best[0] == '\0') goto LAB_000da830;\n      }" if (parenthesized_expression "(best[0] == '.')" ( (binary_expression "best[0] == '.'" (subscript_expression "best[0]" identifier [ number_literal ]) == (char_literal "'.'" ' character ')) )) (compound_statement "{\n        if ((best[1] == '\0') || (iStack_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar11 = best[0];\n      }" { (if_statement "if ((best[1] == '\0') || (iStack_2050 == 3)) goto LAB_000daaec;" if (parenthesized_expression "((best[1] == '\0') || (iStack_2050 == 3))" ( (binary_expression "(best[1] == '\0') || (iStack_2050 == 3)" (parenthesized_expression "(best[1] == '\0')" ( (binary_expression "best[1] == '\0'" (subscript_expression "best[1]" identifier [ number_literal ]) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(iStack_2050 == 3)" ( (binary_expression "iStack_2050 == 3" identifier == number_literal) ))) )) (goto_statement "goto LAB_000daaec;" goto statement_identifier ;)) (labeled_statement "LAB_000daaa4:\n        *pcVar11 = best[0];" statement_identifier : (expression_statement "*pcVar11 = best[0];" (assignment_expression "*pcVar11 = best[0]" (pointer_expression "*pcVar11" * identifier) = (subscript_expression "best[0]" identifier [ number_literal ])) ;)) }) (else_clause "else {\n        uVar5 = 0xffffffff;\n        if (iStack_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar11 = best[0];\n        if (best[0] == '\0') goto LAB_000da830;\n      }" else (compound_statement "{\n        uVar5 = 0xffffffff;\n        if (iStack_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar11 = best[0];\n        if (best[0] == '\0') goto LAB_000da830;\n      }" { (expression_statement "uVar5 = 0xffffffff;" (assignment_expression "uVar5 = 0xffffffff" identifier = number_literal) ;) (if_statement "if (iStack_2050 == 3) goto LAB_000daaf0;" if (parenthesized_expression "(iStack_2050 == 3)" ( (binary_expression "iStack_2050 == 3" identifier == number_literal) )) (goto_statement "goto LAB_000daaf0;" goto statement_identifier ;)) (labeled_statement "LAB_000daa0c:\n        *pcVar11 = best[0];" statement_identifier : (expression_statement "*pcVar11 = best[0];" (assignment_expression "*pcVar11 = best[0]" (pointer_expression "*pcVar11" * identifier) = (subscript_expression "best[0]" identifier [ number_literal ])) ;)) (if_statement "if (best[0] == '\0') goto LAB_000da830;" if (parenthesized_expression "(best[0] == '\0')" ( (binary_expression "best[0] == '\0'" (subscript_expression "best[0]" identifier [ number_literal ]) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000da830;" goto statement_identifier ;)) }))) (expression_statement "pcVar8 = best + 1;" (assignment_expression "pcVar8 = best + 1" identifier = (binary_expression "best + 1" identifier + number_literal)) ;) (expression_statement "cVar6 = best[1];" (assignment_expression "cVar6 = best[1]" identifier = (subscript_expression "best[1]" identifier [ number_literal ])) ;) (while_statement "while( true ) {\n        pcVar11 = pcVar11 + 1;\n        *pcVar11 = cVar6;\n        pcVar8 = pcVar8 + 1;\n        if (cVar6 == '\0') break;\n        cVar6 = *pcVar8;\n      }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n        pcVar11 = pcVar11 + 1;\n        *pcVar11 = cVar6;\n        pcVar8 = pcVar8 + 1;\n        if (cVar6 == '\0') break;\n        cVar6 = *pcVar8;\n      }" { (expression_statement "pcVar11 = pcVar11 + 1;" (assignment_expression "pcVar11 = pcVar11 + 1" identifier = (binary_expression "pcVar11 + 1" identifier + number_literal)) ;) (expression_statement "*pcVar11 = cVar6;" (assignment_expression "*pcVar11 = cVar6" (pointer_expression "*pcVar11" * identifier) = identifier) ;) (expression_statement "pcVar8 = pcVar8 + 1;" (assignment_expression "pcVar8 = pcVar8 + 1" identifier = (binary_expression "pcVar8 + 1" identifier + number_literal)) ;) (if_statement "if (cVar6 == '\0') break;" if (parenthesized_expression "(cVar6 == '\0')" ( (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (break_statement "break;" break ;)) (expression_statement "cVar6 = *pcVar8;" (assignment_expression "cVar6 = *pcVar8" identifier = (pointer_expression "*pcVar8" * identifier)) ;) })) (expression_statement "cVar6 = *pcVar10;" (assignment_expression "cVar6 = *pcVar10" identifier = (pointer_expression "*pcVar10" * identifier)) ;) })) (expression_statement "*pcVar11 = '/';" (assignment_expression "*pcVar11 = '/'" (pointer_expression "*pcVar11" * identifier) = (char_literal "'/'" ' character ')) ;) (expression_statement "pcVar10 = pcVar10 + 1;" (assignment_expression "pcVar10 = pcVar10 + 1" identifier = (binary_expression "pcVar10 + 1" identifier + number_literal)) ;) (expression_statement "pcVar11 = pcVar11 + 1;" (assignment_expression "pcVar11 = pcVar11 + 1" identifier = (binary_expression "pcVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "( true )" ( true )) ;)) })))
(translation_unit "uint spname(char *param_1,char *param_2)\n\n{\n  char *pcVar1;\n  char cVar2;\n  char cVar7;\n  int iVar3;\n  int iVar4;\n  uint uVar5;\n  uint uVar6;\n  char *pcVar8;\n  char *pcVar9;\n  char cVar10;\n  char *pcVar11;\n  char *pcVar12;\n  char *pcVar13;\n  char *pcVar14;\n  undefined *puVar15;\n  int local_2050;\n  char local_2034 [4100];\n  char local_1030;\n  char local_102f;\n  char local_102e [4098];\n  int local_2c;\n  \n  puVar15 = PTR___stack_chk_guard_001464dc;\n  local_2c = *(int *)PTR___stack_chk_guard_001464dc;\n  pcVar8 = PTR_DAT_001445ac + -0x7e78;\n  pcVar11 = param_1;\n  pcVar12 = param_2;\nLAB_000da830:\n  do {\n    cVar7 = *pcVar11;\n    while (cVar7 != '/') {\n      *pcVar12 = '\0';\n      cVar7 = *pcVar11;\n      if (cVar7 == '\0') {\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }\n      pcVar9 = local_2034;\n      if (cVar7 != '/') {\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }\n      *pcVar9 = '\0';\n      pcVar9 = pcVar8;\n      if (*param_2 != '\0') {\n        pcVar9 = param_2;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);\n      if (iVar3 == 0) goto LAB_000daaec;\n      local_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (local_1030 == '.') {\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }\n      pcVar9 = &local_102f;\n      cVar7 = local_102f;\n      while( true ) {\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }\n      cVar7 = *pcVar11;\n    }\n    *pcVar12 = '/';\n    pcVar11 = pcVar11 + 1;\n    pcVar12 = pcVar12 + 1;\n  } while( true );\n}\n\n" (function_definition "uint spname(char *param_1,char *param_2)\n\n{\n  char *pcVar1;\n  char cVar2;\n  char cVar7;\n  int iVar3;\n  int iVar4;\n  uint uVar5;\n  uint uVar6;\n  char *pcVar8;\n  char *pcVar9;\n  char cVar10;\n  char *pcVar11;\n  char *pcVar12;\n  char *pcVar13;\n  char *pcVar14;\n  undefined *puVar15;\n  int local_2050;\n  char local_2034 [4100];\n  char local_1030;\n  char local_102f;\n  char local_102e [4098];\n  int local_2c;\n  \n  puVar15 = PTR___stack_chk_guard_001464dc;\n  local_2c = *(int *)PTR___stack_chk_guard_001464dc;\n  pcVar8 = PTR_DAT_001445ac + -0x7e78;\n  pcVar11 = param_1;\n  pcVar12 = param_2;\nLAB_000da830:\n  do {\n    cVar7 = *pcVar11;\n    while (cVar7 != '/') {\n      *pcVar12 = '\0';\n      cVar7 = *pcVar11;\n      if (cVar7 == '\0') {\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }\n      pcVar9 = local_2034;\n      if (cVar7 != '/') {\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }\n      *pcVar9 = '\0';\n      pcVar9 = pcVar8;\n      if (*param_2 != '\0') {\n        pcVar9 = param_2;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);\n      if (iVar3 == 0) goto LAB_000daaec;\n      local_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (local_1030 == '.') {\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }\n      pcVar9 = &local_102f;\n      cVar7 = local_102f;\n      while( true ) {\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }\n      cVar7 = *pcVar11;\n    }\n    *pcVar12 = '/';\n    pcVar11 = pcVar11 + 1;\n    pcVar12 = pcVar12 + 1;\n  } while( true );\n}" type_identifier (function_declarator "spname(char *param_1,char *param_2)" identifier (parameter_list "(char *param_1,char *param_2)" ( (parameter_declaration "char *param_1" primitive_type (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "char *param_2" primitive_type (pointer_declarator "*param_2" * identifier)) ))) (compound_statement "{\n  char *pcVar1;\n  char cVar2;\n  char cVar7;\n  int iVar3;\n  int iVar4;\n  uint uVar5;\n  uint uVar6;\n  char *pcVar8;\n  char *pcVar9;\n  char cVar10;\n  char *pcVar11;\n  char *pcVar12;\n  char *pcVar13;\n  char *pcVar14;\n  undefined *puVar15;\n  int local_2050;\n  char local_2034 [4100];\n  char local_1030;\n  char local_102f;\n  char local_102e [4098];\n  int local_2c;\n  \n  puVar15 = PTR___stack_chk_guard_001464dc;\n  local_2c = *(int *)PTR___stack_chk_guard_001464dc;\n  pcVar8 = PTR_DAT_001445ac + -0x7e78;\n  pcVar11 = param_1;\n  pcVar12 = param_2;\nLAB_000da830:\n  do {\n    cVar7 = *pcVar11;\n    while (cVar7 != '/') {\n      *pcVar12 = '\0';\n      cVar7 = *pcVar11;\n      if (cVar7 == '\0') {\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }\n      pcVar9 = local_2034;\n      if (cVar7 != '/') {\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }\n      *pcVar9 = '\0';\n      pcVar9 = pcVar8;\n      if (*param_2 != '\0') {\n        pcVar9 = param_2;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);\n      if (iVar3 == 0) goto LAB_000daaec;\n      local_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (local_1030 == '.') {\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }\n      pcVar9 = &local_102f;\n      cVar7 = local_102f;\n      while( true ) {\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }\n      cVar7 = *pcVar11;\n    }\n    *pcVar12 = '/';\n    pcVar11 = pcVar11 + 1;\n    pcVar12 = pcVar12 + 1;\n  } while( true );\n}" { (declaration "char *pcVar1;" primitive_type (pointer_declarator "*pcVar1" * identifier) ;) (declaration "char cVar2;" primitive_type identifier ;) (declaration "char cVar7;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "uint uVar6;" type_identifier identifier ;) (declaration "char *pcVar8;" primitive_type (pointer_declarator "*pcVar8" * identifier) ;) (declaration "char *pcVar9;" primitive_type (pointer_declarator "*pcVar9" * identifier) ;) (declaration "char cVar10;" primitive_type identifier ;) (declaration "char *pcVar11;" primitive_type (pointer_declarator "*pcVar11" * identifier) ;) (declaration "char *pcVar12;" primitive_type (pointer_declarator "*pcVar12" * identifier) ;) (declaration "char *pcVar13;" primitive_type (pointer_declarator "*pcVar13" * identifier) ;) (declaration "char *pcVar14;" primitive_type (pointer_declarator "*pcVar14" * identifier) ;) (declaration "undefined *puVar15;" type_identifier (pointer_declarator "*puVar15" * identifier) ;) (declaration "int local_2050;" primitive_type identifier ;) (declaration "char local_2034 [4100];" primitive_type (array_declarator "local_2034 [4100]" identifier [ number_literal ]) ;) (declaration "char local_1030;" primitive_type identifier ;) (declaration "char local_102f;" primitive_type identifier ;) (declaration "char local_102e [4098];" primitive_type (array_declarator "local_102e [4098]" identifier [ number_literal ]) ;) (declaration "int local_2c;" primitive_type identifier ;) (expression_statement "puVar15 = PTR___stack_chk_guard_001464dc;" (assignment_expression "puVar15 = PTR___stack_chk_guard_001464dc" identifier = identifier) ;) (expression_statement "local_2c = *(int *)PTR___stack_chk_guard_001464dc;" (assignment_expression "local_2c = *(int *)PTR___stack_chk_guard_001464dc" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_001464dc" * (cast_expression "(int *)PTR___stack_chk_guard_001464dc" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "pcVar8 = PTR_DAT_001445ac + -0x7e78;" (assignment_expression "pcVar8 = PTR_DAT_001445ac + -0x7e78" identifier = (binary_expression "PTR_DAT_001445ac + -0x7e78" identifier + number_literal)) ;) (expression_statement "pcVar11 = param_1;" (assignment_expression "pcVar11 = param_1" identifier = identifier) ;) (expression_statement "pcVar12 = param_2;" (assignment_expression "pcVar12 = param_2" identifier = identifier) ;) (labeled_statement "LAB_000da830:\n  do {\n    cVar7 = *pcVar11;\n    while (cVar7 != '/') {\n      *pcVar12 = '\0';\n      cVar7 = *pcVar11;\n      if (cVar7 == '\0') {\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }\n      pcVar9 = local_2034;\n      if (cVar7 != '/') {\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }\n      *pcVar9 = '\0';\n      pcVar9 = pcVar8;\n      if (*param_2 != '\0') {\n        pcVar9 = param_2;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);\n      if (iVar3 == 0) goto LAB_000daaec;\n      local_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (local_1030 == '.') {\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }\n      pcVar9 = &local_102f;\n      cVar7 = local_102f;\n      while( true ) {\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }\n      cVar7 = *pcVar11;\n    }\n    *pcVar12 = '/';\n    pcVar11 = pcVar11 + 1;\n    pcVar12 = pcVar12 + 1;\n  } while( true );" statement_identifier : (do_statement "do {\n    cVar7 = *pcVar11;\n    while (cVar7 != '/') {\n      *pcVar12 = '\0';\n      cVar7 = *pcVar11;\n      if (cVar7 == '\0') {\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }\n      pcVar9 = local_2034;\n      if (cVar7 != '/') {\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }\n      *pcVar9 = '\0';\n      pcVar9 = pcVar8;\n      if (*param_2 != '\0') {\n        pcVar9 = param_2;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);\n      if (iVar3 == 0) goto LAB_000daaec;\n      local_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (local_1030 == '.') {\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }\n      pcVar9 = &local_102f;\n      cVar7 = local_102f;\n      while( true ) {\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }\n      cVar7 = *pcVar11;\n    }\n    *pcVar12 = '/';\n    pcVar11 = pcVar11 + 1;\n    pcVar12 = pcVar12 + 1;\n  } while( true );" do (compound_statement "{\n    cVar7 = *pcVar11;\n    while (cVar7 != '/') {\n      *pcVar12 = '\0';\n      cVar7 = *pcVar11;\n      if (cVar7 == '\0') {\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }\n      pcVar9 = local_2034;\n      if (cVar7 != '/') {\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }\n      *pcVar9 = '\0';\n      pcVar9 = pcVar8;\n      if (*param_2 != '\0') {\n        pcVar9 = param_2;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);\n      if (iVar3 == 0) goto LAB_000daaec;\n      local_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (local_1030 == '.') {\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }\n      pcVar9 = &local_102f;\n      cVar7 = local_102f;\n      while( true ) {\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }\n      cVar7 = *pcVar11;\n    }\n    *pcVar12 = '/';\n    pcVar11 = pcVar11 + 1;\n    pcVar12 = pcVar12 + 1;\n  }" { (expression_statement "cVar7 = *pcVar11;" (assignment_expression "cVar7 = *pcVar11" identifier = (pointer_expression "*pcVar11" * identifier)) ;) (while_statement "while (cVar7 != '/') {\n      *pcVar12 = '\0';\n      cVar7 = *pcVar11;\n      if (cVar7 == '\0') {\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }\n      pcVar9 = local_2034;\n      if (cVar7 != '/') {\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }\n      *pcVar9 = '\0';\n      pcVar9 = pcVar8;\n      if (*param_2 != '\0') {\n        pcVar9 = param_2;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);\n      if (iVar3 == 0) goto LAB_000daaec;\n      local_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (local_1030 == '.') {\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }\n      pcVar9 = &local_102f;\n      cVar7 = local_102f;\n      while( true ) {\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }\n      cVar7 = *pcVar11;\n    }" while (parenthesized_expression "(cVar7 != '/')" ( (binary_expression "cVar7 != '/'" identifier != (char_literal "'/'" ' character ')) )) (compound_statement "{\n      *pcVar12 = '\0';\n      cVar7 = *pcVar11;\n      if (cVar7 == '\0') {\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }\n      pcVar9 = local_2034;\n      if (cVar7 != '/') {\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }\n      *pcVar9 = '\0';\n      pcVar9 = pcVar8;\n      if (*param_2 != '\0') {\n        pcVar9 = param_2;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);\n      if (iVar3 == 0) goto LAB_000daaec;\n      local_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (local_1030 == '.') {\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }\n      pcVar9 = &local_102f;\n      cVar7 = local_102f;\n      while( true ) {\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }\n      cVar7 = *pcVar11;\n    }" { (expression_statement "*pcVar12 = '\0';" (assignment_expression "*pcVar12 = '\0'" (pointer_expression "*pcVar12" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "cVar7 = *pcVar11;" (assignment_expression "cVar7 = *pcVar11" identifier = (pointer_expression "*pcVar11" * identifier)) ;) (if_statement "if (cVar7 == '\0') {\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }" if (parenthesized_expression "(cVar7 == '\0')" ( (binary_expression "cVar7 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }" { (if_statement "if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }" if (parenthesized_expression "((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.'))" ( (binary_expression "(((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')" (parenthesized_expression "(((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.'))" ( (binary_expression "((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')" (parenthesized_expression "((param_1[1] != '\0') || (param_2[1] != '\0'))" ( (binary_expression "(param_1[1] != '\0') || (param_2[1] != '\0')" (parenthesized_expression "(param_1[1] != '\0')" ( (binary_expression "param_1[1] != '\0'" (subscript_expression "param_1[1]" identifier [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(param_2[1] != '\0')" ( (binary_expression "param_2[1] != '\0'" (subscript_expression "param_2[1]" identifier [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) ))) )) || (parenthesized_expression "(*param_1 == '.')" ( (binary_expression "*param_1 == '.'" (pointer_expression "*param_1" * identifier) == (char_literal "'.'" ' character ')) ))) )) || (parenthesized_expression "(*param_2 != '.')" ( (binary_expression "*param_2 != '.'" (pointer_expression "*param_2" * identifier) != (char_literal "'.'" ' character ')) ))) )) (compound_statement "{\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }" { (expression_statement "iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);" (assignment_expression "iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2)" identifier = (call_expression "(*(code *)PTR_strcmp_00146548)(param_1,param_2)" (parenthesized_expression "(*(code *)PTR_strcmp_00146548)" ( (pointer_expression "*(code *)PTR_strcmp_00146548" * (cast_expression "(code *)PTR_strcmp_00146548" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,param_2)" ( identifier , identifier )))) ;) (expression_statement "uVar5 = (uint)(iVar3 != 0);" (assignment_expression "uVar5 = (uint)(iVar3 != 0)" identifier = (call_expression "(uint)(iVar3 != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )))) ;) (goto_statement "goto LAB_000daaf0;" goto statement_identifier ;) })) (labeled_statement "LAB_000daaec:\n        uVar5 = 0xffffffff;" statement_identifier : (expression_statement "uVar5 = 0xffffffff;" (assignment_expression "uVar5 = 0xffffffff" identifier = number_literal) ;)) (labeled_statement "LAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }" statement_identifier : (if_statement "if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }" if (parenthesized_expression "(local_2c == *(int *)puVar15)" ( (binary_expression "local_2c == *(int *)puVar15" identifier == (pointer_expression "*(int *)puVar15" * (cast_expression "(int *)puVar15" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n          return uVar5;\n        }" { (return_statement "return uVar5;" return identifier ;) }))) (expression_statement "iVar3 = local_2c;" (assignment_expression "iVar3 = local_2c" identifier = identifier) ;) (expression_statement "puVar15 = PTR___stack_chk_fail_00146488;" (assignment_expression "puVar15 = PTR___stack_chk_fail_00146488" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_00146488)();" (call_expression "(*(code *)PTR___stack_chk_fail_00146488)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_00146488)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_00146488" * (cast_expression "(code *)PTR___stack_chk_fail_00146488" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "iVar4 = (**(code **)(puVar15 + 0x6b7cc))();" (assignment_expression "iVar4 = (**(code **)(puVar15 + 0x6b7cc))()" identifier = (call_expression "(**(code **)(puVar15 + 0x6b7cc))()" (parenthesized_expression "(**(code **)(puVar15 + 0x6b7cc))" ( (pointer_expression "**(code **)(puVar15 + 0x6b7cc)" * (pointer_expression "*(code **)(puVar15 + 0x6b7cc)" * (cast_expression "(code **)(puVar15 + 0x6b7cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar15 + 0x6b7cc)" ( (binary_expression "puVar15 + 0x6b7cc" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);" (assignment_expression "uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1)" identifier = (call_expression "(**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1)" (parenthesized_expression "(**(code **)(puVar15 + 0x6b824))" ( (pointer_expression "**(code **)(puVar15 + 0x6b824)" * (pointer_expression "*(code **)(puVar15 + 0x6b824)" * (cast_expression "(code **)(puVar15 + 0x6b824)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar15 + 0x6b824)" ( (binary_expression "puVar15 + 0x6b824" identifier + number_literal) ))))) )) (argument_list "((iVar4 * 3 + 1U >> 1) + 1)" ( (binary_expression "(iVar4 * 3 + 1U >> 1) + 1" (parenthesized_expression "(iVar4 * 3 + 1U >> 1)" ( (binary_expression "iVar4 * 3 + 1U >> 1" (binary_expression "iVar4 * 3 + 1U" (binary_expression "iVar4 * 3" identifier * number_literal) + number_literal) >> number_literal) )) + number_literal) )))) ;) (if_statement "if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }" if (parenthesized_expression "((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6))" ( (binary_expression "(uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)" (parenthesized_expression "(uVar5 != 0)" ( (binary_expression "uVar5 != 0" identifier != number_literal) )) && (parenthesized_expression "(uVar6 = spname(iVar3,uVar5), 1 < uVar6)" ( (comma_expression "uVar6 = spname(iVar3,uVar5), 1 < uVar6" (assignment_expression "uVar6 = spname(iVar3,uVar5)" identifier = (call_expression "spname(iVar3,uVar5)" identifier (argument_list "(iVar3,uVar5)" ( identifier , identifier )))) , (binary_expression "1 < uVar6" number_literal < identifier)) ))) )) (compound_statement "{\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }" { (expression_statement "(**(code **)(puVar15 + 0x6b938))(uVar5);" (call_expression "(**(code **)(puVar15 + 0x6b938))(uVar5)" (parenthesized_expression "(**(code **)(puVar15 + 0x6b938))" ( (pointer_expression "**(code **)(puVar15 + 0x6b938)" * (pointer_expression "*(code **)(puVar15 + 0x6b938)" * (cast_expression "(code **)(puVar15 + 0x6b938)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar15 + 0x6b938)" ( (binary_expression "puVar15 + 0x6b938" identifier + number_literal) ))))) )) (argument_list "(uVar5)" ( identifier ))) ;) (return_statement "return 0;" return number_literal ;) })) (return_statement "return uVar5;" return identifier ;) })) (expression_statement "pcVar9 = local_2034;" (assignment_expression "pcVar9 = local_2034" identifier = identifier) ;) (if_statement "if (cVar7 != '/') {\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }" if (parenthesized_expression "(cVar7 != '/')" ( (binary_expression "cVar7 != '/'" identifier != (char_literal "'/'" ' character ')) )) (compound_statement "{\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }" { (do_statement "do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));" do (compound_statement "{\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        }" { (if_statement "if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }" if (parenthesized_expression "(pcVar9 < local_2034 + 0x1000)" ( (binary_expression "pcVar9 < local_2034 + 0x1000" identifier < (binary_expression "local_2034 + 0x1000" identifier + number_literal)) )) (compound_statement "{\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }" { (expression_statement "*pcVar9 = cVar7;" (assignment_expression "*pcVar9 = cVar7" (pointer_expression "*pcVar9" * identifier) = identifier) ;) (expression_statement "pcVar9 = pcVar9 + 1;" (assignment_expression "pcVar9 = pcVar9 + 1" identifier = (binary_expression "pcVar9 + 1" identifier + number_literal)) ;) })) (expression_statement "pcVar11 = pcVar11 + 1;" (assignment_expression "pcVar11 = pcVar11 + 1" identifier = (binary_expression "pcVar11 + 1" identifier + number_literal)) ;) (expression_statement "cVar7 = *pcVar11;" (assignment_expression "cVar7 = *pcVar11" identifier = (pointer_expression "*pcVar11" * identifier)) ;) }) while (parenthesized_expression "((cVar7 != '/') && (cVar7 != '\0'))" ( (binary_expression "(cVar7 != '/') && (cVar7 != '\0')" (parenthesized_expression "(cVar7 != '/')" ( (binary_expression "cVar7 != '/'" identifier != (char_literal "'/'" ' character ')) )) && (parenthesized_expression "(cVar7 != '\0')" ( (binary_expression "cVar7 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) ))) )) ;) })) (expression_statement "*pcVar9 = '\0';" (assignment_expression "*pcVar9 = '\0'" (pointer_expression "*pcVar9" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9 = pcVar8;" (assignment_expression "pcVar9 = pcVar8" identifier = identifier) ;) (if_statement "if (*param_2 != '\0') {\n        pcVar9 = param_2;\n      }" if (parenthesized_expression "(*param_2 != '\0')" ( (binary_expression "*param_2 != '\0'" (pointer_expression "*param_2" * identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        pcVar9 = param_2;\n      }" { (expression_statement "pcVar9 = param_2;" (assignment_expression "pcVar9 = param_2" identifier = identifier) ;) })) (expression_statement "iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);" (assignment_expression "iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9)" identifier = (call_expression "(*(code *)PTR_opendir_00146204)(pcVar9)" (parenthesized_expression "(*(code *)PTR_opendir_00146204)" ( (pointer_expression "*(code *)PTR_opendir_00146204" * (cast_expression "(code *)PTR_opendir_00146204" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar9)" ( identifier )))) ;) (if_statement "if (iVar3 == 0) goto LAB_000daaec;" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000daaec;" goto statement_identifier ;)) (expression_statement "local_2050 = 3;" (assignment_expression "local_2050 = 3" identifier = number_literal) ;) (labeled_statement "LAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);" statement_identifier : (expression_statement "iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);" (assignment_expression "iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3)" identifier = (call_expression "(*(code *)PTR_readdir64_00146278)(iVar3)" (parenthesized_expression "(*(code *)PTR_readdir64_00146278)" ( (pointer_expression "*(code *)PTR_readdir64_00146278" * (cast_expression "(code *)PTR_readdir64_00146278" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar3)" ( identifier )))) ;)) (if_statement "if (iVar4 != 0) {\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (compound_statement "{\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }" { (do_statement "do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );" do (compound_statement "{\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        }" { (expression_statement "cVar7 = *(char *)(iVar4 + 0x13);" (assignment_expression "cVar7 = *(char *)(iVar4 + 0x13)" identifier = (pointer_expression "*(char *)(iVar4 + 0x13)" * (cast_expression "(char *)(iVar4 + 0x13)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x13)" ( (binary_expression "iVar4 + 0x13" identifier + number_literal) ))))) ;) (expression_statement "pcVar14 = (char *)(iVar4 + 0x13);" (assignment_expression "pcVar14 = (char *)(iVar4 + 0x13)" identifier = (cast_expression "(char *)(iVar4 + 0x13)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x13)" ( (binary_expression "iVar4 + 0x13" identifier + number_literal) )))) ;) (expression_statement "pcVar13 = pcVar14;" (assignment_expression "pcVar13 = pcVar14" identifier = identifier) ;) (expression_statement "pcVar9 = local_2034;" (assignment_expression "pcVar9 = local_2034" identifier = identifier) ;) (expression_statement "cVar10 = local_2034[0];" (assignment_expression "cVar10 = local_2034[0]" identifier = (subscript_expression "local_2034[0]" identifier [ number_literal ])) ;) (expression_statement "cVar2 = local_2034[0];" (assignment_expression "cVar2 = local_2034[0]" identifier = (subscript_expression "local_2034[0]" identifier [ number_literal ])) ;) (if_statement "if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }" if (parenthesized_expression "(local_2034[0] == cVar7)" ( (binary_expression "local_2034[0] == cVar7" (subscript_expression "local_2034[0]" identifier [ number_literal ]) == identifier) )) (compound_statement "{\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }" { (do_statement "do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);" do (compound_statement "{\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            }" { (if_statement "if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }" if (parenthesized_expression "(cVar2 == '\0')" ( (binary_expression "cVar2 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }" { (expression_statement "(*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);" (call_expression "(*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001)" (parenthesized_expression "(*(code *)PTR___strcpy_chk_001462f4)" ( (pointer_expression "*(code *)PTR___strcpy_chk_001462f4" * (cast_expression "(code *)PTR___strcpy_chk_001462f4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&local_1030,pcVar14,0x1001)" ( (pointer_expression "&local_1030" & identifier) , identifier , number_literal ))) ;) (expression_statement "(*(code *)PTR_closedir_00146208)(iVar3);" (call_expression "(*(code *)PTR_closedir_00146208)(iVar3)" (parenthesized_expression "(*(code *)PTR_closedir_00146208)" ( (pointer_expression "*(code *)PTR_closedir_00146208" * (cast_expression "(code *)PTR_closedir_00146208" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar3)" ( identifier ))) ;) (if_statement "if (local_1030 != '.') goto LAB_000daa0c;" if (parenthesized_expression "(local_1030 != '.')" ( (binary_expression "local_1030 != '.'" identifier != (char_literal "'.'" ' character ')) )) (goto_statement "goto LAB_000daa0c;" goto statement_identifier ;)) (if_statement "if (local_102f == '\0') goto LAB_000daaec;" if (parenthesized_expression "(local_102f == '\0')" ( (binary_expression "local_102f == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000daaec;" goto statement_identifier ;)) (goto_statement "goto LAB_000daaa4;" goto statement_identifier ;) })) (expression_statement "pcVar13 = pcVar13 + 1;" (assignment_expression "pcVar13 = pcVar13 + 1" identifier = (binary_expression "pcVar13 + 1" identifier + number_literal)) ;) (expression_statement "pcVar1 = pcVar9 + 1;" (assignment_expression "pcVar1 = pcVar9 + 1" identifier = (binary_expression "pcVar9 + 1" identifier + number_literal)) ;) (expression_statement "cVar7 = *pcVar13;" (assignment_expression "cVar7 = *pcVar13" identifier = (pointer_expression "*pcVar13" * identifier)) ;) (expression_statement "pcVar9 = pcVar9 + 1;" (assignment_expression "pcVar9 = pcVar9 + 1" identifier = (binary_expression "pcVar9 + 1" identifier + number_literal)) ;) (expression_statement "cVar10 = *pcVar1;" (assignment_expression "cVar10 = *pcVar1" identifier = (pointer_expression "*pcVar1" * identifier)) ;) (expression_statement "cVar2 = cVar7;" (assignment_expression "cVar2 = cVar7" identifier = identifier) ;) }) while (parenthesized_expression "(cVar7 == *pcVar1)" ( (binary_expression "cVar7 == *pcVar1" identifier == (pointer_expression "*pcVar1" * identifier)) )) ;) })) (if_statement "if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }" if (parenthesized_expression "(cVar7 == '\0')" ( (binary_expression "cVar7 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }" { (if_statement "if (cVar10 == '\0') goto LAB_000da8c8;" if (parenthesized_expression "(cVar10 == '\0')" ( (binary_expression "cVar10 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000da8c8;" goto statement_identifier ;)) (labeled_statement "LAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);" statement_identifier : (expression_statement "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);" (assignment_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1)" identifier = (call_expression "(*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1)" (parenthesized_expression "(*(code *)PTR_strcmp_00146548)" ( (pointer_expression "*(code *)PTR_strcmp_00146548" * (cast_expression "(code *)PTR_strcmp_00146548" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar13,pcVar9 + 1)" ( identifier , (binary_expression "pcVar9 + 1" identifier + number_literal) )))) ;)) (if_statement "if (iVar4 != 0) goto LAB_000da8c8;" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000da8c8;" goto statement_identifier ;)) (labeled_statement "LAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;" statement_identifier : (if_statement "if (local_2050 == 1) goto LAB_000da8c8;" if (parenthesized_expression "(local_2050 == 1)" ( (binary_expression "local_2050 == 1" identifier == number_literal) )) (goto_statement "goto LAB_000da8c8;" goto statement_identifier ;))) (expression_statement "local_2050 = 2;" (assignment_expression "local_2050 = 2" identifier = number_literal) ;) }) (else_clause "else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }" else (compound_statement "{\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }" { (if_statement "if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }" if (parenthesized_expression "(cVar10 == '\0')" ( (binary_expression "cVar10 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }" { (expression_statement "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);" (assignment_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9)" identifier = (call_expression "(*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9)" (parenthesized_expression "(*(code *)PTR_strcmp_00146548)" ( (pointer_expression "*(code *)PTR_strcmp_00146548" * (cast_expression "(code *)PTR_strcmp_00146548" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar13 + 1,pcVar9)" ( (binary_expression "pcVar13 + 1" identifier + number_literal) , identifier )))) ;) (if_statement "if (iVar4 == 0) goto LAB_000da9a0;" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000da9a0;" goto statement_identifier ;)) (goto_statement "goto LAB_000da8c8;" goto statement_identifier ;) })) (if_statement "if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }" if (parenthesized_expression "(((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0))))))" ( (binary_expression "((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))" (parenthesized_expression "((pcVar13[1] == '\0') || (pcVar9[1] == '\0'))" ( (binary_expression "(pcVar13[1] == '\0') || (pcVar9[1] == '\0')" (parenthesized_expression "(pcVar13[1] == '\0')" ( (binary_expression "pcVar13[1] == '\0'" (subscript_expression "pcVar13[1]" identifier [ number_literal ]) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(pcVar9[1] == '\0')" ( (binary_expression "pcVar9[1] == '\0'" (subscript_expression "pcVar9[1]" identifier [ number_literal ]) == (char_literal "'\0'" ' escape_sequence ')) ))) )) || (parenthesized_expression "((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))" ( (parenthesized_expression "(pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0))))" ( (binary_expression "pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))" (binary_expression "pcVar9[1] != cVar7" (subscript_expression "pcVar9[1]" identifier [ number_literal ]) != identifier) || (parenthesized_expression "((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))" ( (parenthesized_expression "(pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0))" ( (binary_expression "pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)" (binary_expression "pcVar13[1] != cVar10" (subscript_expression "pcVar13[1]" identifier [ number_literal ]) != identifier) || (parenthesized_expression "(iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)" ( (comma_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0" (assignment_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2)" identifier = (call_expression "(*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2)" (parenthesized_expression "(*(code *)PTR_strcmp_00146548)" ( (pointer_expression "*(code *)PTR_strcmp_00146548" * (cast_expression "(code *)PTR_strcmp_00146548" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar13 + 2,pcVar9 + 2)" ( (binary_expression "pcVar13 + 2" identifier + number_literal) , (binary_expression "pcVar9 + 2" identifier + number_literal) )))) , (binary_expression "iVar4 != 0" identifier != number_literal)) ))) )) ))) )) ))) )) (compound_statement "{\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }" { (expression_statement "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);" (assignment_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1)" identifier = (call_expression "(*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1)" (parenthesized_expression "(*(code *)PTR_strcmp_00146548)" ( (pointer_expression "*(code *)PTR_strcmp_00146548" * (cast_expression "(code *)PTR_strcmp_00146548" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar13 + 1,pcVar9 + 1)" ( (binary_expression "pcVar13 + 1" identifier + number_literal) , (binary_expression "pcVar9 + 1" identifier + number_literal) )))) ;) (if_statement "if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;" if (parenthesized_expression "((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))" ( (binary_expression "(iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0)" (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0)" ( (comma_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0" (assignment_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9)" identifier = (call_expression "(*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9)" (parenthesized_expression "(*(code *)PTR_strcmp_00146548)" ( (pointer_expression "*(code *)PTR_strcmp_00146548" * (cast_expression "(code *)PTR_strcmp_00146548" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar13 + 1,pcVar9)" ( (binary_expression "pcVar13 + 1" identifier + number_literal) , identifier )))) , (binary_expression "iVar4 != 0" identifier != number_literal)) ))) )) (goto_statement "goto LAB_000da988;" goto statement_identifier ;)) (goto_statement "goto LAB_000da9a0;" goto statement_identifier ;) })) (expression_statement "local_2050 = 1;" (assignment_expression "local_2050 = 1" identifier = number_literal) ;) }))) (expression_statement "(*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);" (call_expression "(*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001)" (parenthesized_expression "(*(code *)PTR___strcpy_chk_001462f4)" ( (pointer_expression "*(code *)PTR___strcpy_chk_001462f4" * (cast_expression "(code *)PTR___strcpy_chk_001462f4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&local_1030,pcVar14,0x1001)" ( (pointer_expression "&local_1030" & identifier) , identifier , number_literal ))) ;) (expression_statement "iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);" (assignment_expression "iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3)" identifier = (call_expression "(*(code *)PTR_readdir64_00146278)(iVar3)" (parenthesized_expression "(*(code *)PTR_readdir64_00146278)" ( (pointer_expression "*(code *)PTR_readdir64_00146278" * (cast_expression "(code *)PTR_readdir64_00146278" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (iVar4 == 0) break;" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) }) while (parenthesized_expression "( true )" ( true )) ;) })) (expression_statement "(*(code *)PTR_closedir_00146208)(iVar3);" (call_expression "(*(code *)PTR_closedir_00146208)(iVar3)" (parenthesized_expression "(*(code *)PTR_closedir_00146208)" ( (pointer_expression "*(code *)PTR_closedir_00146208" * (cast_expression "(code *)PTR_closedir_00146208" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar3)" ( identifier ))) ;) (if_statement "if (local_1030 == '.') {\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }" if (parenthesized_expression "(local_1030 == '.')" ( (binary_expression "local_1030 == '.'" identifier == (char_literal "'.'" ' character ')) )) (compound_statement "{\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }" { (if_statement "if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;" if (parenthesized_expression "((local_102f == '\0') || (local_2050 == 3))" ( (binary_expression "(local_102f == '\0') || (local_2050 == 3)" (parenthesized_expression "(local_102f == '\0')" ( (binary_expression "local_102f == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(local_2050 == 3)" ( (binary_expression "local_2050 == 3" identifier == number_literal) ))) )) (goto_statement "goto LAB_000daaec;" goto statement_identifier ;)) (labeled_statement "LAB_000daaa4:\n        *pcVar12 = local_1030;" statement_identifier : (expression_statement "*pcVar12 = local_1030;" (assignment_expression "*pcVar12 = local_1030" (pointer_expression "*pcVar12" * identifier) = identifier) ;)) }) (else_clause "else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }" else (compound_statement "{\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }" { (expression_statement "uVar5 = 0xffffffff;" (assignment_expression "uVar5 = 0xffffffff" identifier = number_literal) ;) (if_statement "if (local_2050 == 3) goto LAB_000daaf0;" if (parenthesized_expression "(local_2050 == 3)" ( (binary_expression "local_2050 == 3" identifier == number_literal) )) (goto_statement "goto LAB_000daaf0;" goto statement_identifier ;)) (labeled_statement "LAB_000daa0c:\n        *pcVar12 = local_1030;" statement_identifier : (expression_statement "*pcVar12 = local_1030;" (assignment_expression "*pcVar12 = local_1030" (pointer_expression "*pcVar12" * identifier) = identifier) ;)) (if_statement "if (local_1030 == '\0') goto LAB_000da830;" if (parenthesized_expression "(local_1030 == '\0')" ( (binary_expression "local_1030 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000da830;" goto statement_identifier ;)) }))) (expression_statement "pcVar9 = &local_102f;" (assignment_expression "pcVar9 = &local_102f" identifier = (pointer_expression "&local_102f" & identifier)) ;) (expression_statement "cVar7 = local_102f;" (assignment_expression "cVar7 = local_102f" identifier = identifier) ;) (while_statement "while( true ) {\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }" { (expression_statement "pcVar12 = pcVar12 + 1;" (assignment_expression "pcVar12 = pcVar12 + 1" identifier = (binary_expression "pcVar12 + 1" identifier + number_literal)) ;) (expression_statement "*pcVar12 = cVar7;" (assignment_expression "*pcVar12 = cVar7" (pointer_expression "*pcVar12" * identifier) = identifier) ;) (expression_statement "pcVar9 = pcVar9 + 1;" (assignment_expression "pcVar9 = pcVar9 + 1" identifier = (binary_expression "pcVar9 + 1" identifier + number_literal)) ;) (if_statement "if (cVar7 == '\0') break;" if (parenthesized_expression "(cVar7 == '\0')" ( (binary_expression "cVar7 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (break_statement "break;" break ;)) (expression_statement "cVar7 = *pcVar9;" (assignment_expression "cVar7 = *pcVar9" identifier = (pointer_expression "*pcVar9" * identifier)) ;) })) (expression_statement "cVar7 = *pcVar11;" (assignment_expression "cVar7 = *pcVar11" identifier = (pointer_expression "*pcVar11" * identifier)) ;) })) (expression_statement "*pcVar12 = '/';" (assignment_expression "*pcVar12 = '/'" (pointer_expression "*pcVar12" * identifier) = (char_literal "'/'" ' character ')) ;) (expression_statement "pcVar11 = pcVar11 + 1;" (assignment_expression "pcVar11 = pcVar11 + 1" identifier = (binary_expression "pcVar11 + 1" identifier + number_literal)) ;) (expression_statement "pcVar12 = pcVar12 + 1;" (assignment_expression "pcVar12 = pcVar12 + 1" identifier = (binary_expression "pcVar12 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "( true )" ( true )) ;)) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (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 (pointer_declarator * 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 (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (while_statement while (parenthesized_expression ( (binary_expression IDENT != (char_literal ' character ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (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 (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != (char_literal ' escape_sequence ')) )) || (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != (char_literal ' escape_sequence ')) ))) )) || (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (char_literal ' character ')) ))) )) || (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != (char_literal ' character ')) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT != LIT) )))) ;) (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 *)) ) IDENT))) )) (compound_statement { (return_statement return IDENT ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT * LIT) + LIT) >> LIT) )) + LIT) )))) ;) (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 ( IDENT , IDENT )))) , (binary_expression LIT < IDENT)) ))) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (return_statement return LIT ;) })) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' character ')) )) (compound_statement { (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < (binary_expression IDENT + LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) }) while (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != (char_literal ' character ')) )) && (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) ))) )) ;) })) (expression_statement (assignment_expression (pointer_expression * IDENT) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (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) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == IDENT) )) (compound_statement { (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (pointer_expression & IDENT) , IDENT , LIT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' character ')) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * 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 ')) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , (binary_expression IDENT + LIT) )))) ;)) (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 IDENT == LIT) )) (goto_statement goto statement_identifier ;))) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == (char_literal ' escape_sequence ')) )) || (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == (char_literal ' escape_sequence ')) ))) )) || (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) != IDENT) || (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) != IDENT) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) )))) , (binary_expression IDENT != LIT)) ))) )) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) , IDENT )))) , (binary_expression IDENT != LIT)) ))) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) }))) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (pointer_expression & IDENT) , IDENT , LIT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) }) while (parenthesized_expression ( BOOL )) ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' character ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) || (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) }))) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) })) (expression_statement (assignment_expression (pointer_expression * IDENT) = (char_literal ' character ')) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( BOOL )) ;)) })))
(function_definition "uint spname(char *param_1,char *param_2)\n\n{\n  char *pcVar1;\n  char cVar2;\n  char cVar7;\n  int iVar3;\n  int iVar4;\n  uint uVar5;\n  uint uVar6;\n  char *pcVar8;\n  char *pcVar9;\n  char cVar10;\n  char *pcVar11;\n  char *pcVar12;\n  char *pcVar13;\n  char *pcVar14;\n  undefined *puVar15;\n  int local_2050;\n  char local_2034 [4100];\n  char local_1030;\n  char local_102f;\n  char local_102e [4098];\n  int local_2c;\n  \n  puVar15 = PTR___stack_chk_guard_001464dc;\n  local_2c = *(int *)PTR___stack_chk_guard_001464dc;\n  pcVar8 = PTR_DAT_001445ac + -0x7e78;\n  pcVar11 = param_1;\n  pcVar12 = param_2;\nLAB_000da830:\n  do {\n    cVar7 = *pcVar11;\n    while (cVar7 != '/') {\n      *pcVar12 = '\0';\n      cVar7 = *pcVar11;\n      if (cVar7 == '\0') {\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }\n      pcVar9 = local_2034;\n      if (cVar7 != '/') {\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }\n      *pcVar9 = '\0';\n      pcVar9 = pcVar8;\n      if (*param_2 != '\0') {\n        pcVar9 = param_2;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);\n      if (iVar3 == 0) goto LAB_000daaec;\n      local_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (local_1030 == '.') {\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }\n      pcVar9 = &local_102f;\n      cVar7 = local_102f;\n      while( true ) {\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }\n      cVar7 = *pcVar11;\n    }\n    *pcVar12 = '/';\n    pcVar11 = pcVar11 + 1;\n    pcVar12 = pcVar12 + 1;\n  } while( true );\n}" (type_identifier "uint") (function_declarator "spname(char *param_1,char *param_2)" (identifier "spname") (parameter_list "(char *param_1,char *param_2)" (( "(") (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"))) () ")"))) (compound_statement "{\n  char *pcVar1;\n  char cVar2;\n  char cVar7;\n  int iVar3;\n  int iVar4;\n  uint uVar5;\n  uint uVar6;\n  char *pcVar8;\n  char *pcVar9;\n  char cVar10;\n  char *pcVar11;\n  char *pcVar12;\n  char *pcVar13;\n  char *pcVar14;\n  undefined *puVar15;\n  int local_2050;\n  char local_2034 [4100];\n  char local_1030;\n  char local_102f;\n  char local_102e [4098];\n  int local_2c;\n  \n  puVar15 = PTR___stack_chk_guard_001464dc;\n  local_2c = *(int *)PTR___stack_chk_guard_001464dc;\n  pcVar8 = PTR_DAT_001445ac + -0x7e78;\n  pcVar11 = param_1;\n  pcVar12 = param_2;\nLAB_000da830:\n  do {\n    cVar7 = *pcVar11;\n    while (cVar7 != '/') {\n      *pcVar12 = '\0';\n      cVar7 = *pcVar11;\n      if (cVar7 == '\0') {\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }\n      pcVar9 = local_2034;\n      if (cVar7 != '/') {\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }\n      *pcVar9 = '\0';\n      pcVar9 = pcVar8;\n      if (*param_2 != '\0') {\n        pcVar9 = param_2;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);\n      if (iVar3 == 0) goto LAB_000daaec;\n      local_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (local_1030 == '.') {\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }\n      pcVar9 = &local_102f;\n      cVar7 = local_102f;\n      while( true ) {\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }\n      cVar7 = *pcVar11;\n    }\n    *pcVar12 = '/';\n    pcVar11 = pcVar11 + 1;\n    pcVar12 = pcVar12 + 1;\n  } while( true );\n}" ({ "{") (declaration "char *pcVar1;" (primitive_type "char") (pointer_declarator "*pcVar1" (* "*") (identifier "pcVar1")) (; ";")) (declaration "char cVar2;" (primitive_type "char") (identifier "cVar2") (; ";")) (declaration "char cVar7;" (primitive_type "char") (identifier "cVar7") (; ";")) (declaration "int iVar3;" (primitive_type "int") (identifier "iVar3") (; ";")) (declaration "int iVar4;" (primitive_type "int") (identifier "iVar4") (; ";")) (declaration "uint uVar5;" (type_identifier "uint") (identifier "uVar5") (; ";")) (declaration "uint uVar6;" (type_identifier "uint") (identifier "uVar6") (; ";")) (declaration "char *pcVar8;" (primitive_type "char") (pointer_declarator "*pcVar8" (* "*") (identifier "pcVar8")) (; ";")) (declaration "char *pcVar9;" (primitive_type "char") (pointer_declarator "*pcVar9" (* "*") (identifier "pcVar9")) (; ";")) (declaration "char cVar10;" (primitive_type "char") (identifier "cVar10") (; ";")) (declaration "char *pcVar11;" (primitive_type "char") (pointer_declarator "*pcVar11" (* "*") (identifier "pcVar11")) (; ";")) (declaration "char *pcVar12;" (primitive_type "char") (pointer_declarator "*pcVar12" (* "*") (identifier "pcVar12")) (; ";")) (declaration "char *pcVar13;" (primitive_type "char") (pointer_declarator "*pcVar13" (* "*") (identifier "pcVar13")) (; ";")) (declaration "char *pcVar14;" (primitive_type "char") (pointer_declarator "*pcVar14" (* "*") (identifier "pcVar14")) (; ";")) (declaration "undefined *puVar15;" (type_identifier "undefined") (pointer_declarator "*puVar15" (* "*") (identifier "puVar15")) (; ";")) (declaration "int local_2050;" (primitive_type "int") (identifier "local_2050") (; ";")) (declaration "char local_2034 [4100];" (primitive_type "char") (array_declarator "local_2034 [4100]" (identifier "local_2034") ([ "[") (number_literal "4100") (] "]")) (; ";")) (declaration "char local_1030;" (primitive_type "char") (identifier "local_1030") (; ";")) (declaration "char local_102f;" (primitive_type "char") (identifier "local_102f") (; ";")) (declaration "char local_102e [4098];" (primitive_type "char") (array_declarator "local_102e [4098]" (identifier "local_102e") ([ "[") (number_literal "4098") (] "]")) (; ";")) (declaration "int local_2c;" (primitive_type "int") (identifier "local_2c") (; ";")) (expression_statement "puVar15 = PTR___stack_chk_guard_001464dc;" (assignment_expression "puVar15 = PTR___stack_chk_guard_001464dc" (identifier "puVar15") (= "=") (identifier "PTR___stack_chk_guard_001464dc")) (; ";")) (expression_statement "local_2c = *(int *)PTR___stack_chk_guard_001464dc;" (assignment_expression "local_2c = *(int *)PTR___stack_chk_guard_001464dc" (identifier "local_2c") (= "=") (pointer_expression "*(int *)PTR___stack_chk_guard_001464dc" (* "*") (cast_expression "(int *)PTR___stack_chk_guard_001464dc" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_guard_001464dc")))) (; ";")) (expression_statement "pcVar8 = PTR_DAT_001445ac + -0x7e78;" (assignment_expression "pcVar8 = PTR_DAT_001445ac + -0x7e78" (identifier "pcVar8") (= "=") (binary_expression "PTR_DAT_001445ac + -0x7e78" (identifier "PTR_DAT_001445ac") (+ "+") (number_literal "-0x7e78"))) (; ";")) (expression_statement "pcVar11 = param_1;" (assignment_expression "pcVar11 = param_1" (identifier "pcVar11") (= "=") (identifier "param_1")) (; ";")) (expression_statement "pcVar12 = param_2;" (assignment_expression "pcVar12 = param_2" (identifier "pcVar12") (= "=") (identifier "param_2")) (; ";")) (labeled_statement "LAB_000da830:\n  do {\n    cVar7 = *pcVar11;\n    while (cVar7 != '/') {\n      *pcVar12 = '\0';\n      cVar7 = *pcVar11;\n      if (cVar7 == '\0') {\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }\n      pcVar9 = local_2034;\n      if (cVar7 != '/') {\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }\n      *pcVar9 = '\0';\n      pcVar9 = pcVar8;\n      if (*param_2 != '\0') {\n        pcVar9 = param_2;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);\n      if (iVar3 == 0) goto LAB_000daaec;\n      local_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (local_1030 == '.') {\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }\n      pcVar9 = &local_102f;\n      cVar7 = local_102f;\n      while( true ) {\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }\n      cVar7 = *pcVar11;\n    }\n    *pcVar12 = '/';\n    pcVar11 = pcVar11 + 1;\n    pcVar12 = pcVar12 + 1;\n  } while( true );" (statement_identifier "LAB_000da830") (: ":") (do_statement "do {\n    cVar7 = *pcVar11;\n    while (cVar7 != '/') {\n      *pcVar12 = '\0';\n      cVar7 = *pcVar11;\n      if (cVar7 == '\0') {\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }\n      pcVar9 = local_2034;\n      if (cVar7 != '/') {\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }\n      *pcVar9 = '\0';\n      pcVar9 = pcVar8;\n      if (*param_2 != '\0') {\n        pcVar9 = param_2;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);\n      if (iVar3 == 0) goto LAB_000daaec;\n      local_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (local_1030 == '.') {\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }\n      pcVar9 = &local_102f;\n      cVar7 = local_102f;\n      while( true ) {\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }\n      cVar7 = *pcVar11;\n    }\n    *pcVar12 = '/';\n    pcVar11 = pcVar11 + 1;\n    pcVar12 = pcVar12 + 1;\n  } while( true );" (do "do") (compound_statement "{\n    cVar7 = *pcVar11;\n    while (cVar7 != '/') {\n      *pcVar12 = '\0';\n      cVar7 = *pcVar11;\n      if (cVar7 == '\0') {\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }\n      pcVar9 = local_2034;\n      if (cVar7 != '/') {\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }\n      *pcVar9 = '\0';\n      pcVar9 = pcVar8;\n      if (*param_2 != '\0') {\n        pcVar9 = param_2;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);\n      if (iVar3 == 0) goto LAB_000daaec;\n      local_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (local_1030 == '.') {\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }\n      pcVar9 = &local_102f;\n      cVar7 = local_102f;\n      while( true ) {\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }\n      cVar7 = *pcVar11;\n    }\n    *pcVar12 = '/';\n    pcVar11 = pcVar11 + 1;\n    pcVar12 = pcVar12 + 1;\n  }" ({ "{") (expression_statement "cVar7 = *pcVar11;" (assignment_expression "cVar7 = *pcVar11" (identifier "cVar7") (= "=") (pointer_expression "*pcVar11" (* "*") (identifier "pcVar11"))) (; ";")) (while_statement "while (cVar7 != '/') {\n      *pcVar12 = '\0';\n      cVar7 = *pcVar11;\n      if (cVar7 == '\0') {\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }\n      pcVar9 = local_2034;\n      if (cVar7 != '/') {\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }\n      *pcVar9 = '\0';\n      pcVar9 = pcVar8;\n      if (*param_2 != '\0') {\n        pcVar9 = param_2;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);\n      if (iVar3 == 0) goto LAB_000daaec;\n      local_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (local_1030 == '.') {\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }\n      pcVar9 = &local_102f;\n      cVar7 = local_102f;\n      while( true ) {\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }\n      cVar7 = *pcVar11;\n    }" (while "while") (parenthesized_expression "(cVar7 != '/')" (( "(") (binary_expression "cVar7 != '/'" (identifier "cVar7") (!= "!=") (char_literal "'/'" (' "'") (character "/") (' "'"))) () ")")) (compound_statement "{\n      *pcVar12 = '\0';\n      cVar7 = *pcVar11;\n      if (cVar7 == '\0') {\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }\n      pcVar9 = local_2034;\n      if (cVar7 != '/') {\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }\n      *pcVar9 = '\0';\n      pcVar9 = pcVar8;\n      if (*param_2 != '\0') {\n        pcVar9 = param_2;\n      }\n      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);\n      if (iVar3 == 0) goto LAB_000daaec;\n      local_2050 = 3;\nLAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n      if (iVar4 != 0) {\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }\n      (*(code *)PTR_closedir_00146208)(iVar3);\n      if (local_1030 == '.') {\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }\n      pcVar9 = &local_102f;\n      cVar7 = local_102f;\n      while( true ) {\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }\n      cVar7 = *pcVar11;\n    }" ({ "{") (expression_statement "*pcVar12 = '\0';" (assignment_expression "*pcVar12 = '\0'" (pointer_expression "*pcVar12" (* "*") (identifier "pcVar12")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "cVar7 = *pcVar11;" (assignment_expression "cVar7 = *pcVar11" (identifier "cVar7") (= "=") (pointer_expression "*pcVar11" (* "*") (identifier "pcVar11"))) (; ";")) (if_statement "if (cVar7 == '\0') {\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }" (if "if") (parenthesized_expression "(cVar7 == '\0')" (( "(") (binary_expression "cVar7 == '\0'" (identifier "cVar7") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }\nLAB_000daaec:\n        uVar5 = 0xffffffff;\nLAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }\n        iVar3 = local_2c;\n        puVar15 = PTR___stack_chk_fail_00146488;\n        (*(code *)PTR___stack_chk_fail_00146488)();\n        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();\n        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);\n        if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }\n        return uVar5;\n      }" ({ "{") (if_statement "if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')) {\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }" (if "if") (parenthesized_expression "((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.'))" (( "(") (binary_expression "(((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||\n           (*param_2 != '.')" (parenthesized_expression "(((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.'))" (( "(") (binary_expression "((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')" (parenthesized_expression "((param_1[1] != '\0') || (param_2[1] != '\0'))" (( "(") (binary_expression "(param_1[1] != '\0') || (param_2[1] != '\0')" (parenthesized_expression "(param_1[1] != '\0')" (( "(") (binary_expression "param_1[1] != '\0'" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (|| "||") (parenthesized_expression "(param_2[1] != '\0')" (( "(") (binary_expression "param_2[1] != '\0'" (subscript_expression "param_2[1]" (identifier "param_2") ([ "[") (number_literal "1") (] "]")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (|| "||") (parenthesized_expression "(*param_1 == '.')" (( "(") (binary_expression "*param_1 == '.'" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (== "==") (char_literal "'.'" (' "'") (character ".") (' "'"))) () ")"))) () ")")) (|| "||") (parenthesized_expression "(*param_2 != '.')" (( "(") (binary_expression "*param_2 != '.'" (pointer_expression "*param_2" (* "*") (identifier "param_2")) (!= "!=") (char_literal "'.'" (' "'") (character ".") (' "'"))) () ")"))) () ")")) (compound_statement "{\n          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);\n          uVar5 = (uint)(iVar3 != 0);\n          goto LAB_000daaf0;\n        }" ({ "{") (expression_statement "iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);" (assignment_expression "iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2)" (identifier "iVar3") (= "=") (call_expression "(*(code *)PTR_strcmp_00146548)(param_1,param_2)" (parenthesized_expression "(*(code *)PTR_strcmp_00146548)" (( "(") (pointer_expression "*(code *)PTR_strcmp_00146548" (* "*") (cast_expression "(code *)PTR_strcmp_00146548" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strcmp_00146548"))) () ")")) (argument_list "(param_1,param_2)" (( "(") (identifier "param_1") (, ",") (identifier "param_2") () ")")))) (; ";")) (expression_statement "uVar5 = (uint)(iVar3 != 0);" (assignment_expression "uVar5 = (uint)(iVar3 != 0)" (identifier "uVar5") (= "=") (call_expression "(uint)(iVar3 != 0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(iVar3 != 0)" (( "(") (binary_expression "iVar3 != 0" (identifier "iVar3") (!= "!=") (number_literal "0")) () ")")))) (; ";")) (goto_statement "goto LAB_000daaf0;" (goto "goto") (statement_identifier "LAB_000daaf0") (; ";")) (} "}"))) (labeled_statement "LAB_000daaec:\n        uVar5 = 0xffffffff;" (statement_identifier "LAB_000daaec") (: ":") (expression_statement "uVar5 = 0xffffffff;" (assignment_expression "uVar5 = 0xffffffff" (identifier "uVar5") (= "=") (number_literal "0xffffffff")) (; ";"))) (labeled_statement "LAB_000daaf0:\n        if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }" (statement_identifier "LAB_000daaf0") (: ":") (if_statement "if (local_2c == *(int *)puVar15) {\n          return uVar5;\n        }" (if "if") (parenthesized_expression "(local_2c == *(int *)puVar15)" (( "(") (binary_expression "local_2c == *(int *)puVar15" (identifier "local_2c") (== "==") (pointer_expression "*(int *)puVar15" (* "*") (cast_expression "(int *)puVar15" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar15")))) () ")")) (compound_statement "{\n          return uVar5;\n        }" ({ "{") (return_statement "return uVar5;" (return "return") (identifier "uVar5") (; ";")) (} "}")))) (expression_statement "iVar3 = local_2c;" (assignment_expression "iVar3 = local_2c" (identifier "iVar3") (= "=") (identifier "local_2c")) (; ";")) (expression_statement "puVar15 = PTR___stack_chk_fail_00146488;" (assignment_expression "puVar15 = PTR___stack_chk_fail_00146488" (identifier "puVar15") (= "=") (identifier "PTR___stack_chk_fail_00146488")) (; ";")) (expression_statement "(*(code *)PTR___stack_chk_fail_00146488)();" (call_expression "(*(code *)PTR___stack_chk_fail_00146488)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_00146488)" (( "(") (pointer_expression "*(code *)PTR___stack_chk_fail_00146488" (* "*") (cast_expression "(code *)PTR___stack_chk_fail_00146488" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_fail_00146488"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "iVar4 = (**(code **)(puVar15 + 0x6b7cc))();" (assignment_expression "iVar4 = (**(code **)(puVar15 + 0x6b7cc))()" (identifier "iVar4") (= "=") (call_expression "(**(code **)(puVar15 + 0x6b7cc))()" (parenthesized_expression "(**(code **)(puVar15 + 0x6b7cc))" (( "(") (pointer_expression "**(code **)(puVar15 + 0x6b7cc)" (* "*") (pointer_expression "*(code **)(puVar15 + 0x6b7cc)" (* "*") (cast_expression "(code **)(puVar15 + 0x6b7cc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar15 + 0x6b7cc)" (( "(") (binary_expression "puVar15 + 0x6b7cc" (identifier "puVar15") (+ "+") (number_literal "0x6b7cc")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);" (assignment_expression "uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1)" (identifier "uVar5") (= "=") (call_expression "(**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1)" (parenthesized_expression "(**(code **)(puVar15 + 0x6b824))" (( "(") (pointer_expression "**(code **)(puVar15 + 0x6b824)" (* "*") (pointer_expression "*(code **)(puVar15 + 0x6b824)" (* "*") (cast_expression "(code **)(puVar15 + 0x6b824)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar15 + 0x6b824)" (( "(") (binary_expression "puVar15 + 0x6b824" (identifier "puVar15") (+ "+") (number_literal "0x6b824")) () ")"))))) () ")")) (argument_list "((iVar4 * 3 + 1U >> 1) + 1)" (( "(") (binary_expression "(iVar4 * 3 + 1U >> 1) + 1" (parenthesized_expression "(iVar4 * 3 + 1U >> 1)" (( "(") (binary_expression "iVar4 * 3 + 1U >> 1" (binary_expression "iVar4 * 3 + 1U" (binary_expression "iVar4 * 3" (identifier "iVar4") (* "*") (number_literal "3")) (+ "+") (number_literal "1U")) (>> ">>") (number_literal "1")) () ")")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (if_statement "if ((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)) {\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }" (if "if") (parenthesized_expression "((uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6))" (( "(") (binary_expression "(uVar5 != 0) && (uVar6 = spname(iVar3,uVar5), 1 < uVar6)" (parenthesized_expression "(uVar5 != 0)" (( "(") (binary_expression "uVar5 != 0" (identifier "uVar5") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(uVar6 = spname(iVar3,uVar5), 1 < uVar6)" (( "(") (comma_expression "uVar6 = spname(iVar3,uVar5), 1 < uVar6" (assignment_expression "uVar6 = spname(iVar3,uVar5)" (identifier "uVar6") (= "=") (call_expression "spname(iVar3,uVar5)" (identifier "spname") (argument_list "(iVar3,uVar5)" (( "(") (identifier "iVar3") (, ",") (identifier "uVar5") () ")")))) (, ",") (binary_expression "1 < uVar6" (number_literal "1") (< "<") (identifier "uVar6"))) () ")"))) () ")")) (compound_statement "{\n          (**(code **)(puVar15 + 0x6b938))(uVar5);\n          return 0;\n        }" ({ "{") (expression_statement "(**(code **)(puVar15 + 0x6b938))(uVar5);" (call_expression "(**(code **)(puVar15 + 0x6b938))(uVar5)" (parenthesized_expression "(**(code **)(puVar15 + 0x6b938))" (( "(") (pointer_expression "**(code **)(puVar15 + 0x6b938)" (* "*") (pointer_expression "*(code **)(puVar15 + 0x6b938)" (* "*") (cast_expression "(code **)(puVar15 + 0x6b938)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar15 + 0x6b938)" (( "(") (binary_expression "puVar15 + 0x6b938" (identifier "puVar15") (+ "+") (number_literal "0x6b938")) () ")"))))) () ")")) (argument_list "(uVar5)" (( "(") (identifier "uVar5") () ")"))) (; ";")) (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (return_statement "return uVar5;" (return "return") (identifier "uVar5") (; ";")) (} "}"))) (expression_statement "pcVar9 = local_2034;" (assignment_expression "pcVar9 = local_2034" (identifier "pcVar9") (= "=") (identifier "local_2034")) (; ";")) (if_statement "if (cVar7 != '/') {\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }" (if "if") (parenthesized_expression "(cVar7 != '/')" (( "(") (binary_expression "cVar7 != '/'" (identifier "cVar7") (!= "!=") (char_literal "'/'" (' "'") (character "/") (' "'"))) () ")")) (compound_statement "{\n        do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));\n      }" ({ "{") (do_statement "do {\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        } while ((cVar7 != '/') && (cVar7 != '\0'));" (do "do") (compound_statement "{\n          if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }\n          pcVar11 = pcVar11 + 1;\n          cVar7 = *pcVar11;\n        }" ({ "{") (if_statement "if (pcVar9 < local_2034 + 0x1000) {\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }" (if "if") (parenthesized_expression "(pcVar9 < local_2034 + 0x1000)" (( "(") (binary_expression "pcVar9 < local_2034 + 0x1000" (identifier "pcVar9") (< "<") (binary_expression "local_2034 + 0x1000" (identifier "local_2034") (+ "+") (number_literal "0x1000"))) () ")")) (compound_statement "{\n            *pcVar9 = cVar7;\n            pcVar9 = pcVar9 + 1;\n          }" ({ "{") (expression_statement "*pcVar9 = cVar7;" (assignment_expression "*pcVar9 = cVar7" (pointer_expression "*pcVar9" (* "*") (identifier "pcVar9")) (= "=") (identifier "cVar7")) (; ";")) (expression_statement "pcVar9 = pcVar9 + 1;" (assignment_expression "pcVar9 = pcVar9 + 1" (identifier "pcVar9") (= "=") (binary_expression "pcVar9 + 1" (identifier "pcVar9") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (expression_statement "pcVar11 = pcVar11 + 1;" (assignment_expression "pcVar11 = pcVar11 + 1" (identifier "pcVar11") (= "=") (binary_expression "pcVar11 + 1" (identifier "pcVar11") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "cVar7 = *pcVar11;" (assignment_expression "cVar7 = *pcVar11" (identifier "cVar7") (= "=") (pointer_expression "*pcVar11" (* "*") (identifier "pcVar11"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "((cVar7 != '/') && (cVar7 != '\0'))" (( "(") (binary_expression "(cVar7 != '/') && (cVar7 != '\0')" (parenthesized_expression "(cVar7 != '/')" (( "(") (binary_expression "cVar7 != '/'" (identifier "cVar7") (!= "!=") (char_literal "'/'" (' "'") (character "/") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(cVar7 != '\0')" (( "(") (binary_expression "cVar7 != '\0'" (identifier "cVar7") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (; ";")) (} "}"))) (expression_statement "*pcVar9 = '\0';" (assignment_expression "*pcVar9 = '\0'" (pointer_expression "*pcVar9" (* "*") (identifier "pcVar9")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar9 = pcVar8;" (assignment_expression "pcVar9 = pcVar8" (identifier "pcVar9") (= "=") (identifier "pcVar8")) (; ";")) (if_statement "if (*param_2 != '\0') {\n        pcVar9 = param_2;\n      }" (if "if") (parenthesized_expression "(*param_2 != '\0')" (( "(") (binary_expression "*param_2 != '\0'" (pointer_expression "*param_2" (* "*") (identifier "param_2")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        pcVar9 = param_2;\n      }" ({ "{") (expression_statement "pcVar9 = param_2;" (assignment_expression "pcVar9 = param_2" (identifier "pcVar9") (= "=") (identifier "param_2")) (; ";")) (} "}"))) (expression_statement "iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);" (assignment_expression "iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9)" (identifier "iVar3") (= "=") (call_expression "(*(code *)PTR_opendir_00146204)(pcVar9)" (parenthesized_expression "(*(code *)PTR_opendir_00146204)" (( "(") (pointer_expression "*(code *)PTR_opendir_00146204" (* "*") (cast_expression "(code *)PTR_opendir_00146204" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_opendir_00146204"))) () ")")) (argument_list "(pcVar9)" (( "(") (identifier "pcVar9") () ")")))) (; ";")) (if_statement "if (iVar3 == 0) goto LAB_000daaec;" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000daaec;" (goto "goto") (statement_identifier "LAB_000daaec") (; ";"))) (expression_statement "local_2050 = 3;" (assignment_expression "local_2050 = 3" (identifier "local_2050") (= "=") (number_literal "3")) (; ";")) (labeled_statement "LAB_000da8c8:\n      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);" (statement_identifier "LAB_000da8c8") (: ":") (expression_statement "iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);" (assignment_expression "iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3)" (identifier "iVar4") (= "=") (call_expression "(*(code *)PTR_readdir64_00146278)(iVar3)" (parenthesized_expression "(*(code *)PTR_readdir64_00146278)" (( "(") (pointer_expression "*(code *)PTR_readdir64_00146278" (* "*") (cast_expression "(code *)PTR_readdir64_00146278" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_readdir64_00146278"))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")")))) (; ";"))) (if_statement "if (iVar4 != 0) {\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }" (if "if") (parenthesized_expression "(iVar4 != 0)" (( "(") (binary_expression "iVar4 != 0" (identifier "iVar4") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );\n      }" ({ "{") (do_statement "do {\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        } while( true );" (do "do") (compound_statement "{\n          cVar7 = *(char *)(iVar4 + 0x13);\n          pcVar14 = (char *)(iVar4 + 0x13);\n          pcVar13 = pcVar14;\n          pcVar9 = local_2034;\n          cVar10 = local_2034[0];\n          cVar2 = local_2034[0];\n          if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }\n          if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }\n          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);\n          if (iVar4 == 0) break;\n        }" ({ "{") (expression_statement "cVar7 = *(char *)(iVar4 + 0x13);" (assignment_expression "cVar7 = *(char *)(iVar4 + 0x13)" (identifier "cVar7") (= "=") (pointer_expression "*(char *)(iVar4 + 0x13)" (* "*") (cast_expression "(char *)(iVar4 + 0x13)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + 0x13)" (( "(") (binary_expression "iVar4 + 0x13" (identifier "iVar4") (+ "+") (number_literal "0x13")) () ")"))))) (; ";")) (expression_statement "pcVar14 = (char *)(iVar4 + 0x13);" (assignment_expression "pcVar14 = (char *)(iVar4 + 0x13)" (identifier "pcVar14") (= "=") (cast_expression "(char *)(iVar4 + 0x13)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + 0x13)" (( "(") (binary_expression "iVar4 + 0x13" (identifier "iVar4") (+ "+") (number_literal "0x13")) () ")")))) (; ";")) (expression_statement "pcVar13 = pcVar14;" (assignment_expression "pcVar13 = pcVar14" (identifier "pcVar13") (= "=") (identifier "pcVar14")) (; ";")) (expression_statement "pcVar9 = local_2034;" (assignment_expression "pcVar9 = local_2034" (identifier "pcVar9") (= "=") (identifier "local_2034")) (; ";")) (expression_statement "cVar10 = local_2034[0];" (assignment_expression "cVar10 = local_2034[0]" (identifier "cVar10") (= "=") (subscript_expression "local_2034[0]" (identifier "local_2034") ([ "[") (number_literal "0") (] "]"))) (; ";")) (expression_statement "cVar2 = local_2034[0];" (assignment_expression "cVar2 = local_2034[0]" (identifier "cVar2") (= "=") (subscript_expression "local_2034[0]" (identifier "local_2034") ([ "[") (number_literal "0") (] "]"))) (; ";")) (if_statement "if (local_2034[0] == cVar7) {\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }" (if "if") (parenthesized_expression "(local_2034[0] == cVar7)" (( "(") (binary_expression "local_2034[0] == cVar7" (subscript_expression "local_2034[0]" (identifier "local_2034") ([ "[") (number_literal "0") (] "]")) (== "==") (identifier "cVar7")) () ")")) (compound_statement "{\n            do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);\n          }" ({ "{") (do_statement "do {\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            } while (cVar7 == *pcVar1);" (do "do") (compound_statement "{\n              if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }\n              pcVar13 = pcVar13 + 1;\n              pcVar1 = pcVar9 + 1;\n              cVar7 = *pcVar13;\n              pcVar9 = pcVar9 + 1;\n              cVar10 = *pcVar1;\n              cVar2 = cVar7;\n            }" ({ "{") (if_statement "if (cVar2 == '\0') {\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }" (if "if") (parenthesized_expression "(cVar2 == '\0')" (( "(") (binary_expression "cVar2 == '\0'" (identifier "cVar2") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);\n                (*(code *)PTR_closedir_00146208)(iVar3);\n                if (local_1030 != '.') goto LAB_000daa0c;\n                if (local_102f == '\0') goto LAB_000daaec;\n                goto LAB_000daaa4;\n              }" ({ "{") (expression_statement "(*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);" (call_expression "(*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001)" (parenthesized_expression "(*(code *)PTR___strcpy_chk_001462f4)" (( "(") (pointer_expression "*(code *)PTR___strcpy_chk_001462f4" (* "*") (cast_expression "(code *)PTR___strcpy_chk_001462f4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___strcpy_chk_001462f4"))) () ")")) (argument_list "(&local_1030,pcVar14,0x1001)" (( "(") (pointer_expression "&local_1030" (& "&") (identifier "local_1030")) (, ",") (identifier "pcVar14") (, ",") (number_literal "0x1001") () ")"))) (; ";")) (expression_statement "(*(code *)PTR_closedir_00146208)(iVar3);" (call_expression "(*(code *)PTR_closedir_00146208)(iVar3)" (parenthesized_expression "(*(code *)PTR_closedir_00146208)" (( "(") (pointer_expression "*(code *)PTR_closedir_00146208" (* "*") (cast_expression "(code *)PTR_closedir_00146208" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_closedir_00146208"))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (if_statement "if (local_1030 != '.') goto LAB_000daa0c;" (if "if") (parenthesized_expression "(local_1030 != '.')" (( "(") (binary_expression "local_1030 != '.'" (identifier "local_1030") (!= "!=") (char_literal "'.'" (' "'") (character ".") (' "'"))) () ")")) (goto_statement "goto LAB_000daa0c;" (goto "goto") (statement_identifier "LAB_000daa0c") (; ";"))) (if_statement "if (local_102f == '\0') goto LAB_000daaec;" (if "if") (parenthesized_expression "(local_102f == '\0')" (( "(") (binary_expression "local_102f == '\0'" (identifier "local_102f") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_000daaec;" (goto "goto") (statement_identifier "LAB_000daaec") (; ";"))) (goto_statement "goto LAB_000daaa4;" (goto "goto") (statement_identifier "LAB_000daaa4") (; ";")) (} "}"))) (expression_statement "pcVar13 = pcVar13 + 1;" (assignment_expression "pcVar13 = pcVar13 + 1" (identifier "pcVar13") (= "=") (binary_expression "pcVar13 + 1" (identifier "pcVar13") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pcVar1 = pcVar9 + 1;" (assignment_expression "pcVar1 = pcVar9 + 1" (identifier "pcVar1") (= "=") (binary_expression "pcVar9 + 1" (identifier "pcVar9") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "cVar7 = *pcVar13;" (assignment_expression "cVar7 = *pcVar13" (identifier "cVar7") (= "=") (pointer_expression "*pcVar13" (* "*") (identifier "pcVar13"))) (; ";")) (expression_statement "pcVar9 = pcVar9 + 1;" (assignment_expression "pcVar9 = pcVar9 + 1" (identifier "pcVar9") (= "=") (binary_expression "pcVar9 + 1" (identifier "pcVar9") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "cVar10 = *pcVar1;" (assignment_expression "cVar10 = *pcVar1" (identifier "cVar10") (= "=") (pointer_expression "*pcVar1" (* "*") (identifier "pcVar1"))) (; ";")) (expression_statement "cVar2 = cVar7;" (assignment_expression "cVar2 = cVar7" (identifier "cVar2") (= "=") (identifier "cVar7")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(cVar7 == *pcVar1)" (( "(") (binary_expression "cVar7 == *pcVar1" (identifier "cVar7") (== "==") (pointer_expression "*pcVar1" (* "*") (identifier "pcVar1"))) () ")")) (; ";")) (} "}"))) (if_statement "if (cVar7 == '\0') {\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }\n          else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }" (if "if") (parenthesized_expression "(cVar7 == '\0')" (( "(") (binary_expression "cVar7 == '\0'" (identifier "cVar7") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n            if (cVar10 == '\0') goto LAB_000da8c8;\nLAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);\n            if (iVar4 != 0) goto LAB_000da8c8;\nLAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;\n            local_2050 = 2;\n          }" ({ "{") (if_statement "if (cVar10 == '\0') goto LAB_000da8c8;" (if "if") (parenthesized_expression "(cVar10 == '\0')" (( "(") (binary_expression "cVar10 == '\0'" (identifier "cVar10") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_000da8c8;" (goto "goto") (statement_identifier "LAB_000da8c8") (; ";"))) (labeled_statement "LAB_000da988:\n            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);" (statement_identifier "LAB_000da988") (: ":") (expression_statement "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);" (assignment_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1)" (identifier "iVar4") (= "=") (call_expression "(*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1)" (parenthesized_expression "(*(code *)PTR_strcmp_00146548)" (( "(") (pointer_expression "*(code *)PTR_strcmp_00146548" (* "*") (cast_expression "(code *)PTR_strcmp_00146548" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strcmp_00146548"))) () ")")) (argument_list "(pcVar13,pcVar9 + 1)" (( "(") (identifier "pcVar13") (, ",") (binary_expression "pcVar9 + 1" (identifier "pcVar9") (+ "+") (number_literal "1")) () ")")))) (; ";"))) (if_statement "if (iVar4 != 0) goto LAB_000da8c8;" (if "if") (parenthesized_expression "(iVar4 != 0)" (( "(") (binary_expression "iVar4 != 0" (identifier "iVar4") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_000da8c8;" (goto "goto") (statement_identifier "LAB_000da8c8") (; ";"))) (labeled_statement "LAB_000da9a0:\n            if (local_2050 == 1) goto LAB_000da8c8;" (statement_identifier "LAB_000da9a0") (: ":") (if_statement "if (local_2050 == 1) goto LAB_000da8c8;" (if "if") (parenthesized_expression "(local_2050 == 1)" (( "(") (binary_expression "local_2050 == 1" (identifier "local_2050") (== "==") (number_literal "1")) () ")")) (goto_statement "goto LAB_000da8c8;" (goto "goto") (statement_identifier "LAB_000da8c8") (; ";")))) (expression_statement "local_2050 = 2;" (assignment_expression "local_2050 = 2" (identifier "local_2050") (= "=") (number_literal "2")) (; ";")) (} "}")) (else_clause "else {\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }" (else "else") (compound_statement "{\n            if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }\n            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }\n            local_2050 = 1;\n          }" ({ "{") (if_statement "if (cVar10 == '\0') {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }" (if "if") (parenthesized_expression "(cVar10 == '\0')" (( "(") (binary_expression "cVar10 == '\0'" (identifier "cVar10") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);\n              if (iVar4 == 0) goto LAB_000da9a0;\n              goto LAB_000da8c8;\n            }" ({ "{") (expression_statement "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);" (assignment_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9)" (identifier "iVar4") (= "=") (call_expression "(*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9)" (parenthesized_expression "(*(code *)PTR_strcmp_00146548)" (( "(") (pointer_expression "*(code *)PTR_strcmp_00146548" (* "*") (cast_expression "(code *)PTR_strcmp_00146548" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strcmp_00146548"))) () ")")) (argument_list "(pcVar13 + 1,pcVar9)" (( "(") (binary_expression "pcVar13 + 1" (identifier "pcVar13") (+ "+") (number_literal "1")) (, ",") (identifier "pcVar9") () ")")))) (; ";")) (if_statement "if (iVar4 == 0) goto LAB_000da9a0;" (if "if") (parenthesized_expression "(iVar4 == 0)" (( "(") (binary_expression "iVar4 == 0" (identifier "iVar4") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000da9a0;" (goto "goto") (statement_identifier "LAB_000da9a0") (; ";"))) (goto_statement "goto LAB_000da8c8;" (goto "goto") (statement_identifier "LAB_000da8c8") (; ";")) (} "}"))) (if_statement "if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }" (if "if") (parenthesized_expression "(((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0))))))" (( "(") (binary_expression "((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||\n               ((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))" (parenthesized_expression "((pcVar13[1] == '\0') || (pcVar9[1] == '\0'))" (( "(") (binary_expression "(pcVar13[1] == '\0') || (pcVar9[1] == '\0')" (parenthesized_expression "(pcVar13[1] == '\0')" (( "(") (binary_expression "pcVar13[1] == '\0'" (subscript_expression "pcVar13[1]" (identifier "pcVar13") ([ "[") (number_literal "1") (] "]")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (|| "||") (parenthesized_expression "(pcVar9[1] == '\0')" (( "(") (binary_expression "pcVar9[1] == '\0'" (subscript_expression "pcVar9[1]" (identifier "pcVar9") ([ "[") (number_literal "1") (] "]")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (|| "||") (parenthesized_expression "((pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))" (( "(") (parenthesized_expression "(pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0))))" (( "(") (binary_expression "pcVar9[1] != cVar7 ||\n                ((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))" (binary_expression "pcVar9[1] != cVar7" (subscript_expression "pcVar9[1]" (identifier "pcVar9") ([ "[") (number_literal "1") (] "]")) (!= "!=") (identifier "cVar7")) (|| "||") (parenthesized_expression "((pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))" (( "(") (parenthesized_expression "(pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0))" (( "(") (binary_expression "pcVar13[1] != cVar10 ||\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)" (binary_expression "pcVar13[1] != cVar10" (subscript_expression "pcVar13[1]" (identifier "pcVar13") ([ "[") (number_literal "1") (] "]")) (!= "!=") (identifier "cVar10")) (|| "||") (parenthesized_expression "(iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)" (( "(") (comma_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0" (assignment_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2)" (identifier "iVar4") (= "=") (call_expression "(*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2)" (parenthesized_expression "(*(code *)PTR_strcmp_00146548)" (( "(") (pointer_expression "*(code *)PTR_strcmp_00146548" (* "*") (cast_expression "(code *)PTR_strcmp_00146548" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strcmp_00146548"))) () ")")) (argument_list "(pcVar13 + 2,pcVar9 + 2)" (( "(") (binary_expression "pcVar13 + 2" (identifier "pcVar13") (+ "+") (number_literal "2")) (, ",") (binary_expression "pcVar9 + 2" (identifier "pcVar9") (+ "+") (number_literal "2")) () ")")))) (, ",") (binary_expression "iVar4 != 0" (identifier "iVar4") (!= "!=") (number_literal "0"))) () ")"))) () ")")) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);\n              if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;\n              goto LAB_000da9a0;\n            }" ({ "{") (expression_statement "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);" (assignment_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1)" (identifier "iVar4") (= "=") (call_expression "(*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1)" (parenthesized_expression "(*(code *)PTR_strcmp_00146548)" (( "(") (pointer_expression "*(code *)PTR_strcmp_00146548" (* "*") (cast_expression "(code *)PTR_strcmp_00146548" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strcmp_00146548"))) () ")")) (argument_list "(pcVar13 + 1,pcVar9 + 1)" (( "(") (binary_expression "pcVar13 + 1" (identifier "pcVar13") (+ "+") (number_literal "1")) (, ",") (binary_expression "pcVar9 + 1" (identifier "pcVar9") (+ "+") (number_literal "1")) () ")")))) (; ";")) (if_statement "if ((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))\n              goto LAB_000da988;" (if "if") (parenthesized_expression "((iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))" (( "(") (binary_expression "(iVar4 != 0) &&\n                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0)" (parenthesized_expression "(iVar4 != 0)" (( "(") (binary_expression "iVar4 != 0" (identifier "iVar4") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0)" (( "(") (comma_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0" (assignment_expression "iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9)" (identifier "iVar4") (= "=") (call_expression "(*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9)" (parenthesized_expression "(*(code *)PTR_strcmp_00146548)" (( "(") (pointer_expression "*(code *)PTR_strcmp_00146548" (* "*") (cast_expression "(code *)PTR_strcmp_00146548" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strcmp_00146548"))) () ")")) (argument_list "(pcVar13 + 1,pcVar9)" (( "(") (binary_expression "pcVar13 + 1" (identifier "pcVar13") (+ "+") (number_literal "1")) (, ",") (identifier "pcVar9") () ")")))) (, ",") (binary_expression "iVar4 != 0" (identifier "iVar4") (!= "!=") (number_literal "0"))) () ")"))) () ")")) (goto_statement "goto LAB_000da988;" (goto "goto") (statement_identifier "LAB_000da988") (; ";"))) (goto_statement "goto LAB_000da9a0;" (goto "goto") (statement_identifier "LAB_000da9a0") (; ";")) (} "}"))) (expression_statement "local_2050 = 1;" (assignment_expression "local_2050 = 1" (identifier "local_2050") (= "=") (number_literal "1")) (; ";")) (} "}")))) (expression_statement "(*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);" (call_expression "(*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001)" (parenthesized_expression "(*(code *)PTR___strcpy_chk_001462f4)" (( "(") (pointer_expression "*(code *)PTR___strcpy_chk_001462f4" (* "*") (cast_expression "(code *)PTR___strcpy_chk_001462f4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___strcpy_chk_001462f4"))) () ")")) (argument_list "(&local_1030,pcVar14,0x1001)" (( "(") (pointer_expression "&local_1030" (& "&") (identifier "local_1030")) (, ",") (identifier "pcVar14") (, ",") (number_literal "0x1001") () ")"))) (; ";")) (expression_statement "iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);" (assignment_expression "iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3)" (identifier "iVar4") (= "=") (call_expression "(*(code *)PTR_readdir64_00146278)(iVar3)" (parenthesized_expression "(*(code *)PTR_readdir64_00146278)" (( "(") (pointer_expression "*(code *)PTR_readdir64_00146278" (* "*") (cast_expression "(code *)PTR_readdir64_00146278" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_readdir64_00146278"))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")")))) (; ";")) (if_statement "if (iVar4 == 0) break;" (if "if") (parenthesized_expression "(iVar4 == 0)" (( "(") (binary_expression "iVar4 == 0" (identifier "iVar4") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (} "}"))) (expression_statement "(*(code *)PTR_closedir_00146208)(iVar3);" (call_expression "(*(code *)PTR_closedir_00146208)(iVar3)" (parenthesized_expression "(*(code *)PTR_closedir_00146208)" (( "(") (pointer_expression "*(code *)PTR_closedir_00146208" (* "*") (cast_expression "(code *)PTR_closedir_00146208" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_closedir_00146208"))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (if_statement "if (local_1030 == '.') {\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }\n      else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }" (if "if") (parenthesized_expression "(local_1030 == '.')" (( "(") (binary_expression "local_1030 == '.'" (identifier "local_1030") (== "==") (char_literal "'.'" (' "'") (character ".") (' "'"))) () ")")) (compound_statement "{\n        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;\nLAB_000daaa4:\n        *pcVar12 = local_1030;\n      }" ({ "{") (if_statement "if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;" (if "if") (parenthesized_expression "((local_102f == '\0') || (local_2050 == 3))" (( "(") (binary_expression "(local_102f == '\0') || (local_2050 == 3)" (parenthesized_expression "(local_102f == '\0')" (( "(") (binary_expression "local_102f == '\0'" (identifier "local_102f") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (|| "||") (parenthesized_expression "(local_2050 == 3)" (( "(") (binary_expression "local_2050 == 3" (identifier "local_2050") (== "==") (number_literal "3")) () ")"))) () ")")) (goto_statement "goto LAB_000daaec;" (goto "goto") (statement_identifier "LAB_000daaec") (; ";"))) (labeled_statement "LAB_000daaa4:\n        *pcVar12 = local_1030;" (statement_identifier "LAB_000daaa4") (: ":") (expression_statement "*pcVar12 = local_1030;" (assignment_expression "*pcVar12 = local_1030" (pointer_expression "*pcVar12" (* "*") (identifier "pcVar12")) (= "=") (identifier "local_1030")) (; ";"))) (} "}")) (else_clause "else {\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }" (else "else") (compound_statement "{\n        uVar5 = 0xffffffff;\n        if (local_2050 == 3) goto LAB_000daaf0;\nLAB_000daa0c:\n        *pcVar12 = local_1030;\n        if (local_1030 == '\0') goto LAB_000da830;\n      }" ({ "{") (expression_statement "uVar5 = 0xffffffff;" (assignment_expression "uVar5 = 0xffffffff" (identifier "uVar5") (= "=") (number_literal "0xffffffff")) (; ";")) (if_statement "if (local_2050 == 3) goto LAB_000daaf0;" (if "if") (parenthesized_expression "(local_2050 == 3)" (( "(") (binary_expression "local_2050 == 3" (identifier "local_2050") (== "==") (number_literal "3")) () ")")) (goto_statement "goto LAB_000daaf0;" (goto "goto") (statement_identifier "LAB_000daaf0") (; ";"))) (labeled_statement "LAB_000daa0c:\n        *pcVar12 = local_1030;" (statement_identifier "LAB_000daa0c") (: ":") (expression_statement "*pcVar12 = local_1030;" (assignment_expression "*pcVar12 = local_1030" (pointer_expression "*pcVar12" (* "*") (identifier "pcVar12")) (= "=") (identifier "local_1030")) (; ";"))) (if_statement "if (local_1030 == '\0') goto LAB_000da830;" (if "if") (parenthesized_expression "(local_1030 == '\0')" (( "(") (binary_expression "local_1030 == '\0'" (identifier "local_1030") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_000da830;" (goto "goto") (statement_identifier "LAB_000da830") (; ";"))) (} "}")))) (expression_statement "pcVar9 = &local_102f;" (assignment_expression "pcVar9 = &local_102f" (identifier "pcVar9") (= "=") (pointer_expression "&local_102f" (& "&") (identifier "local_102f"))) (; ";")) (expression_statement "cVar7 = local_102f;" (assignment_expression "cVar7 = local_102f" (identifier "cVar7") (= "=") (identifier "local_102f")) (; ";")) (while_statement "while( true ) {\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n        pcVar12 = pcVar12 + 1;\n        *pcVar12 = cVar7;\n        pcVar9 = pcVar9 + 1;\n        if (cVar7 == '\0') break;\n        cVar7 = *pcVar9;\n      }" ({ "{") (expression_statement "pcVar12 = pcVar12 + 1;" (assignment_expression "pcVar12 = pcVar12 + 1" (identifier "pcVar12") (= "=") (binary_expression "pcVar12 + 1" (identifier "pcVar12") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*pcVar12 = cVar7;" (assignment_expression "*pcVar12 = cVar7" (pointer_expression "*pcVar12" (* "*") (identifier "pcVar12")) (= "=") (identifier "cVar7")) (; ";")) (expression_statement "pcVar9 = pcVar9 + 1;" (assignment_expression "pcVar9 = pcVar9 + 1" (identifier "pcVar9") (= "=") (binary_expression "pcVar9 + 1" (identifier "pcVar9") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (cVar7 == '\0') break;" (if "if") (parenthesized_expression "(cVar7 == '\0')" (( "(") (binary_expression "cVar7 == '\0'" (identifier "cVar7") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "cVar7 = *pcVar9;" (assignment_expression "cVar7 = *pcVar9" (identifier "cVar7") (= "=") (pointer_expression "*pcVar9" (* "*") (identifier "pcVar9"))) (; ";")) (} "}"))) (expression_statement "cVar7 = *pcVar11;" (assignment_expression "cVar7 = *pcVar11" (identifier "cVar7") (= "=") (pointer_expression "*pcVar11" (* "*") (identifier "pcVar11"))) (; ";")) (} "}"))) (expression_statement "*pcVar12 = '/';" (assignment_expression "*pcVar12 = '/'" (pointer_expression "*pcVar12" (* "*") (identifier "pcVar12")) (= "=") (char_literal "'/'" (' "'") (character "/") (' "'"))) (; ";")) (expression_statement "pcVar11 = pcVar11 + 1;" (assignment_expression "pcVar11 = pcVar11 + 1" (identifier "pcVar11") (= "=") (binary_expression "pcVar11 + 1" (identifier "pcVar11") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pcVar12 = pcVar12 + 1;" (assignment_expression "pcVar12 = pcVar12 + 1" (identifier "pcVar12") (= "=") (binary_expression "pcVar12 + 1" (identifier "pcVar12") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";"))) (} "}")))

int function_1(char *oldname,char *newname)

{
  char *pcVar1;
  char var_11;
  char *var_4;
  char var_2;
  int var_3;
  int var_10;
  type_1 var_7;
  char *pcVar7;
  char *var_8;
  char var_13;
  char *var_6;
  char *var_16;
  char *var_12;
  char *pcVar13;
  type_2 *var_5;
  int var_14;
  char var_9 [4097];
  char var_15 [4097];
  
  var_5 = PTR___stack_chk_guard_001464dc;
  var_4 = *(char **)PTR___stack_chk_guard_001464dc;
  pcVar7 = var_1 + -0x7e78;
  var_6 = oldname;
  var_16 = newname;
LAB_000da830:
  do {
    var_2 = *var_6;
    while (var_2 != '/') {
      *var_16 = '\0';
      var_2 = *var_6;
      if (var_2 == '\0') {
        if ((((oldname[1] != '\0') || (newname[1] != '\0')) || (*oldname == '.')) ||
           (*newname != '.')) {
          var_3 = (*(type_3 *)PTR_strcmp_00146548)(oldname,newname);
          var_7 = (type_1)(var_3 != 0);
          goto LAB_000daaf0;
        }
LAB_000daaec:
        var_7 = 0xffffffff;
LAB_000daaf0:
        if (var_4 == *(char **)var_5) {
          return var_7;
        }
        var_5 = PTR___stack_chk_fail_00146488;
        (*(type_3 *)PTR___stack_chk_fail_00146488)();
        var_3 = (**(type_3 **)(var_5 + 0x6b7cc))();
        var_6 = (char *)(**(type_3 **)(var_5 + 0x6b824))((var_3 * 3 + 1U >> 1) + 1);
        if ((var_6 != (char *)0x0) && (var_7 = function_1(var_4,var_6), 1 < var_7)) {
          (**(type_3 **)(var_5 + 0x6b938))(var_6);
          return 0;
        }
        return (int)var_6;
      }
      var_8 = var_9;
      if (var_2 != '/') {
        do {
          if (var_8 < var_9 + 0x1000) {
            *var_8 = var_2;
            var_8 = var_8 + 1;
          }
          var_6 = var_6 + 1;
          var_2 = *var_6;
        } while ((var_2 != '/') && (var_2 != '\0'));
      }
      *var_8 = '\0';
      var_8 = pcVar7;
      if (*newname != '\0') {
        var_8 = newname;
      }
      var_3 = (*(type_3 *)PTR_opendir_00146204)(var_8);
      if (var_3 == 0) goto LAB_000daaec;
      var_14 = 3;
LAB_000da8c8:
      var_10 = (*(type_3 *)PTR_readdir64_00146278)(var_3);
      if (var_10 != 0) {
        do {
          var_2 = *(char *)(var_10 + 0x13);
          pcVar13 = (char *)(var_10 + 0x13);
          var_12 = pcVar13;
          var_8 = var_9;
          var_13 = var_9[0];
          var_11 = var_9[0];
          if (var_9[0] == var_2) {
            do {
              if (var_11 == '\0') {
                (*(type_3 *)PTR___strcpy_chk_001462f4)(var_15,pcVar13,0x1001);
                (*(type_3 *)PTR_closedir_00146208)(var_3);
                if (var_15[0] != '.') goto LAB_000daa0c;
                if (var_15[1] == '\0') goto LAB_000daaec;
                goto LAB_000daaa4;
              }
              var_12 = var_12 + 1;
              pcVar1 = var_8 + 1;
              var_2 = *var_12;
              var_8 = var_8 + 1;
              var_13 = *pcVar1;
              var_11 = var_2;
            } while (var_2 == *pcVar1);
          }
          if (var_2 == '\0') {
            if (var_13 == '\0') goto LAB_000da8c8;
LAB_000da988:
            var_10 = (*(type_3 *)PTR_strcmp_00146548)(var_12,var_8 + 1);
            if (var_10 != 0) goto LAB_000da8c8;
LAB_000da9a0:
            if (var_14 == 1) goto LAB_000da8c8;
            var_14 = 2;
          }
          else {
            if (var_13 == '\0') {
              var_10 = (*(type_3 *)PTR_strcmp_00146548)(var_12 + 1,var_8);
              if (var_10 == 0) goto LAB_000da9a0;
              goto LAB_000da8c8;
            }
            if (((var_12[1] == '\0') || (var_8[1] == '\0')) ||
               ((var_8[1] != var_2 ||
                ((var_12[1] != var_13 ||
                 (var_10 = (*(type_3 *)PTR_strcmp_00146548)(var_12 + 2,var_8 + 2), var_10 != 0)))))) {
              var_10 = (*(type_3 *)PTR_strcmp_00146548)(var_12 + 1,var_8 + 1);
              if ((var_10 != 0) &&
                 (var_10 = (*(type_3 *)PTR_strcmp_00146548)(var_12 + 1,var_8), var_10 != 0))
              goto LAB_000da988;
              goto LAB_000da9a0;
            }
            var_14 = 1;
          }
          (*(type_3 *)PTR___strcpy_chk_001462f4)(var_15,pcVar13,0x1001);
          var_10 = (*(type_3 *)PTR_readdir64_00146278)(var_3);
          if (var_10 == 0) break;
        } while( true );
      }
      (*(type_3 *)PTR_closedir_00146208)(var_3);
      if (var_15[0] == '.') {
        if ((var_15[1] == '\0') || (var_14 == 3)) goto LAB_000daaec;
LAB_000daaa4:
        *var_16 = var_15[0];
      }
      else {
        var_7 = 0xffffffff;
        if (var_14 == 3) goto LAB_000daaf0;
LAB_000daa0c:
        *var_16 = var_15[0];
        if (var_15[0] == '\0') goto LAB_000da830;
      }
      var_8 = var_15 + 1;
      var_2 = var_15[1];
      while( true ) {
        var_16 = var_16 + 1;
        *var_16 = var_2;
        var_8 = var_8 + 1;
        if (var_2 == '\0') break;
        var_2 = *var_8;
      }
      var_2 = *var_6;
    }
    *var_16 = '/';
    var_6 = var_6 + 1;
    var_16 = var_16 + 1;
  } while( true );
}


(translation_unit (function_definition type: (type_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))))) body: (compound_statement (declaration type: (primitive_type) 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: (primitive_type) 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: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (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: (identifier)) (declaration type: (primitive_type) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (primitive_type) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (labeled_statement label: (statement_identifier) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (while_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (character)))) body: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (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: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (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: (char_literal (escape_sequence)))))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (character)))))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (character)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))))) (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: (identifier))))) consequence: (compound_statement (return_statement (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)) right: (number_literal))) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) right: (binary_expression left: (number_literal) right: (identifier)))))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (return_statement (number_literal)))) (return_statement (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (character)))) consequence: (compound_statement (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier))))) condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (character)))) right: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence))))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier))))) (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: (number_literal))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (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)))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) consequence: (compound_statement (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (pointer_expression argument: (identifier)) (identifier) (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (character)))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))) (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: (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: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (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: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (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: (char_literal (escape_sequence)))))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier)) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier)) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (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: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (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 (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (identifier)))) right: (binary_expression left: (identifier) 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 (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (pointer_expression argument: (identifier)) (identifier) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement))) condition: (parenthesized_expression (true))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (character)))) consequence: (compound_statement (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: (identifier) right: (number_literal))))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (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: (pointer_expression argument: (identifier)) right: (identifier)))) (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: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (while_statement condition: (parenthesized_expression (true)) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (char_literal (character)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (true)))))))

uint MASKED(char *param_1,char *param_2)

{
  char *pcVar1;
  char cVar2;
  char cVar7;
  int iVar3;
  int iVar4;
  uint uVar5;
  uint uVar6;
  char *pcVar8;
  char *pcVar9;
  char cVar10;
  char *pcVar11;
  char *pcVar12;
  char *pcVar13;
  char *pcVar14;
  undefined *puVar15;
  int local_2050;
  char local_2034 [4100];
  char local_1030;
  char local_102f;
  char local_102e [4098];
  int local_2c;
  
  puVar15 = PTR___stack_chk_guard_001464dc;
  local_2c = *(int *)PTR___stack_chk_guard_001464dc;
  pcVar8 = PTR_DAT_001445ac + -0x7e78;
  pcVar11 = param_1;
  pcVar12 = param_2;
LAB_000da830:
  do {
    cVar7 = *pcVar11;
    while (cVar7 != '/') {
      *pcVar12 = '\0';
      cVar7 = *pcVar11;
      if (cVar7 == '\0') {
        if ((((param_1[1] != '\0') || (param_2[1] != '\0')) || (*param_1 == '.')) ||
           (*param_2 != '.')) {
          iVar3 = (*(code *)PTR_strcmp_00146548)(param_1,param_2);
          uVar5 = (uint)(iVar3 != 0);
          goto LAB_000daaf0;
        }
LAB_000daaec:
        uVar5 = 0xffffffff;
LAB_000daaf0:
        if (local_2c == *(int *)puVar15) {
          return uVar5;
        }
        iVar3 = local_2c;
        puVar15 = PTR___stack_chk_fail_00146488;
        (*(code *)PTR___stack_chk_fail_00146488)();
        iVar4 = (**(code **)(puVar15 + 0x6b7cc))();
        uVar5 = (**(code **)(puVar15 + 0x6b824))((iVar4 * 3 + 1U >> 1) + 1);
        if ((uVar5 != 0) && (uVar6 = MASKED(iVar3,uVar5), 1 < uVar6)) {
          (**(code **)(puVar15 + 0x6b938))(uVar5);
          return 0;
        }
        return uVar5;
      }
      pcVar9 = local_2034;
      if (cVar7 != '/') {
        do {
          if (pcVar9 < local_2034 + 0x1000) {
            *pcVar9 = cVar7;
            pcVar9 = pcVar9 + 1;
          }
          pcVar11 = pcVar11 + 1;
          cVar7 = *pcVar11;
        } while ((cVar7 != '/') && (cVar7 != '\0'));
      }
      *pcVar9 = '\0';
      pcVar9 = pcVar8;
      if (*param_2 != '\0') {
        pcVar9 = param_2;
      }
      iVar3 = (*(code *)PTR_opendir_00146204)(pcVar9);
      if (iVar3 == 0) goto LAB_000daaec;
      local_2050 = 3;
LAB_000da8c8:
      iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);
      if (iVar4 != 0) {
        do {
          cVar7 = *(char *)(iVar4 + 0x13);
          pcVar14 = (char *)(iVar4 + 0x13);
          pcVar13 = pcVar14;
          pcVar9 = local_2034;
          cVar10 = local_2034[0];
          cVar2 = local_2034[0];
          if (local_2034[0] == cVar7) {
            do {
              if (cVar2 == '\0') {
                (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);
                (*(code *)PTR_closedir_00146208)(iVar3);
                if (local_1030 != '.') goto LAB_000daa0c;
                if (local_102f == '\0') goto LAB_000daaec;
                goto LAB_000daaa4;
              }
              pcVar13 = pcVar13 + 1;
              pcVar1 = pcVar9 + 1;
              cVar7 = *pcVar13;
              pcVar9 = pcVar9 + 1;
              cVar10 = *pcVar1;
              cVar2 = cVar7;
            } while (cVar7 == *pcVar1);
          }
          if (cVar7 == '\0') {
            if (cVar10 == '\0') goto LAB_000da8c8;
LAB_000da988:
            iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13,pcVar9 + 1);
            if (iVar4 != 0) goto LAB_000da8c8;
LAB_000da9a0:
            if (local_2050 == 1) goto LAB_000da8c8;
            local_2050 = 2;
          }
          else {
            if (cVar10 == '\0') {
              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9);
              if (iVar4 == 0) goto LAB_000da9a0;
              goto LAB_000da8c8;
            }
            if (((pcVar13[1] == '\0') || (pcVar9[1] == '\0')) ||
               ((pcVar9[1] != cVar7 ||
                ((pcVar13[1] != cVar10 ||
                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 2,pcVar9 + 2), iVar4 != 0)))))) {
              iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9 + 1);
              if ((iVar4 != 0) &&
                 (iVar4 = (*(code *)PTR_strcmp_00146548)(pcVar13 + 1,pcVar9), iVar4 != 0))
              goto LAB_000da988;
              goto LAB_000da9a0;
            }
            local_2050 = 1;
          }
          (*(code *)PTR___strcpy_chk_001462f4)(&local_1030,pcVar14,0x1001);
          iVar4 = (*(code *)PTR_readdir64_00146278)(iVar3);
          if (iVar4 == 0) break;
        } while( true );
      }
      (*(code *)PTR_closedir_00146208)(iVar3);
      if (local_1030 == '.') {
        if ((local_102f == '\0') || (local_2050 == 3)) goto LAB_000daaec;
LAB_000daaa4:
        *pcVar12 = local_1030;
      }
      else {
        uVar5 = 0xffffffff;
        if (local_2050 == 3) goto LAB_000daaf0;
LAB_000daa0c:
        *pcVar12 = local_1030;
        if (local_1030 == '\0') goto LAB_000da830;
      }
      pcVar9 = &local_102f;
      cVar7 = local_102f;
      while( true ) {
        pcVar12 = pcVar12 + 1;
        *pcVar12 = cVar7;
        pcVar9 = pcVar9 + 1;
        if (cVar7 == '\0') break;
        cVar7 = *pcVar9;
      }
      cVar7 = *pcVar11;
    }
    *pcVar12 = '/';
    pcVar11 = pcVar11 + 1;
    pcVar12 = pcVar12 + 1;
  } while( true );
}

