
/* WARNING: Removing unreachable block (ram,0x00105539) */
/* WARNING: Removing unreachable block (ram,0x00105514) */
/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */

int dolocate(int argc,char **argv,int secure_db_fd)

{
  char cVar1;
  long lVar2;
  bool bVar3;
  uint uVar4;
  ExistenceCheckType EVar5;
  visitor *pvVar6;
  _Bool _Var7;
  int iVar8;
  uint uVar9;
  uint uVar10;
  time_t tVar11;
  undefined8 uVar12;
  re_pattern_buffer *bufp;
  re_dfa_t *prVar13;
  char *pcVar14;
  char *pcVar15;
  int *piVar16;
  size_t sVar17;
  ushort **ppuVar18;
  undefined8 uVar19;
  tm *__tp;
  undefined8 uVar20;
  char *pcVar21;
  char *pcVar22;
  size_t sVar23;
  undefined *puVar24;
  uintmax_t uVar25;
  int iVar26;
  int *unaff_RBP;
  ulong uVar27;
  code *fn;
  int unaff_R12D;
  char **ppcVar28;
  int unaff_R15D;
  long in_FS_OFFSET;
  byte bVar29;
  double dVar30;
  int local_d04;
  char *local_d00;
  char *local_cf8;
  uint local_cf0;
  int local_cec;
  double local_ce8;
  FILE *local_ce0;
  uint local_cd8;
  ExistenceCheckType local_cd4;
  char *local_cd0;
  uint local_cc8;
  int local_cc4;
  char **local_cc0;
  uintmax_t local_cb8;
  int local_cb0;
  uint local_cac;
  uint local_ca8;
  uint local_ca4;
  char *local_ca0;
  int local_c98;
  int local_c94;
  size_t path_element_pos;
  size_t path_element_len;
  int opti;
  undefined4 uStack_c6c;
  char *end;
  __syscall_slong_t local_c60;
  stat st;
  process_data procdata;
  char hbuf1 [652];
  char hbuf2 [652];
  char hbuf3 [652];
  char hbuf4 [652];
  
  bVar29 = 0;
  lVar2 = *(long *)(in_FS_OFFSET + 0x28);
  if (*argv == (char *)0x0) {
    set_program_name("locate");
  }
  else {
    set_program_name(*argv);
  }
  setlocale(6,"");
  bindtextdomain("findutils","/usr/share/locale");
  textdomain("findutils");
  quote_opts = clone_quoting_options((quoting_options *)0x0);
  iVar8 = atexit(close_stdout);
  if ((iVar8 == 0) && (local_cc8 = atexit(cleanup_quote_opts), local_cc8 == 0)) {
    limits.limit = 0;
    limits.items_accepted = 0;
    print_quoted_filename = true;
    local_d00 = getenv("LOCATE_PATH");
    check_existence = ACCEPT_EITHER;
    unaff_RBP = &opti;
    puVar24 = &DAT_0011eb4c;
    local_d04 = 0;
    local_cf0 = 0;
    local_cec = 0;
    local_cc4 = 0;
    local_cb0 = 0;
    local_c98 = 0;
    local_c94 = 0;
    unaff_R15D = 0;
    local_cd8 = local_cc8;
  }
  else {
    puVar24 = (undefined *)dcgettext(0,"The atexit library function failed",5);
    piVar16 = __errno_location();
    error(1,*piVar16,puVar24);
    local_c98 = unaff_R12D;
  }
  opti = -1;
  iVar8 = getopt_long(argc,argv,"Abcd:eEil:prsm0SwHPL",longopts,unaff_RBP);
  if (iVar8 != -1) {
    if (0x51 < iVar8 - 0x30U) {
                    /* WARNING: Subroutine does not return */
      usage(1);
    }
                    /* WARNING: Could not recover jumptable at 0x00104479. Too many branches */
                    /* WARNING: Treating indirect jump as call */
    iVar8 = (*(code *)(puVar24 + *(int *)(puVar24 + (ulong)(iVar8 - 0x30U) * 4)))();
    return iVar8;
  }
  local_ca4 = secure_db_fd;
  if ((-1 < secure_db_fd) && (local_ca4 = secure_db_fd, local_d00 != (char *)0x0)) {
    close(secure_db_fd);
    local_ca4 = 0xffffffff;
  }
  if (local_c94 == 0 && local_cec == 0) {
    if (optind == argc) {
      uVar20 = dcgettext(0,"pattern argument expected",5);
      error(0,0,uVar20);
                    /* WARNING: Subroutine does not return */
      usage(1);
    }
    local_cb0 = 1;
  }
  else if ((local_cec != 0) && (optind == argc)) {
    local_cd8 = local_cc8;
  }
  iVar8 = isatty(1);
  stdout_is_a_tty = iVar8 == 1;
  if (local_d00 != (char *)0x0) {
    splitstring(local_d00,":",true,&path_element_pos,&path_element_len);
  }
  uVar9 = local_cf0 | 0x400000;
  if (unaff_R15D == 0) {
    uVar9 = local_cf0;
  }
  bVar3 = false;
  uVar25 = 0;
  while ((local_cd8 == 0 || (limits.items_accepted < limits.limit))) {
    statistics.highbit_filename_count = 0;
    statistics.newline_count = 0;
    statistics.whitespace_count = 0;
    statistics.total_filename_length = 0;
    statistics.total_filename_count = 0;
    statistics.compressed_bytes = 0;
    if (local_d00 == (char *)0x0) {
      if (local_ca4 == 0xffffffff) break;
      local_cf8 = selected_secure_db;
      local_cd0 = local_d00;
      uVar10 = local_ca4;
      local_ca4 = 0xffffffff;
    }
    else {
      if (path_element_len == 1) {
        if (local_d00[path_element_pos] == '-') {
          if (!bVar3) {
            bVar3 = true;
            local_cf8 = "<stdin>";
            local_cd0 = (char *)0x0;
            uVar10 = local_cc8;
            goto LAB_00105254;
          }
          uVar20 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);
          error(0,0,uVar20);
          goto LAB_0010468d;
        }
        if (local_d00[path_element_pos] != '.') goto LAB_00104891;
        local_cf8 = "/var/cache/locate/locatedb";
        local_cd0 = (char *)0x0;
      }
      else {
        local_cf8 = "/var/cache/locate/locatedb";
        local_cd0 = (char *)0x0;
        if (path_element_len != 0) {
LAB_00104891:
          local_cf8 = strndup(local_d00 + path_element_pos,path_element_len);
          local_cd0 = local_cf8;
        }
      }
      uVar10 = opendb(local_cf8);
      if ((int)uVar10 < 0) {
        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);
        piVar16 = __errno_location();
        error(0,*piVar16,&DAT_001207c7,pcVar15);
        goto LAB_0010468d;
      }
    }
LAB_00105254:
    iVar8 = __fxstat(1,uVar10,(stat *)&st);
    if (iVar8 == 0) {
      local_cb8 = st.st_size;
      end = (char *)st.st_mtim.tv_sec;
      local_c60 = st.st_mtim.tv_nsec;
      tVar11 = time((time_t *)&opti);
      if (tVar11 == -1) {
        uVar20 = dcgettext(0,"time system call failed",5);
        piVar16 = __errno_location();
        error(0,*piVar16,uVar20);
      }
      else {
        dVar30 = difftime(CONCAT44(uStack_c6c,opti),st.st_mtim.tv_sec);
        uVar4 = warn_number_units;
        if ((double)(warn_number_units * 0x15180) < dVar30) {
          uVar20 = dcgettext(0,"days",5);
          uVar19 = dcgettext(0,"days",5);
          pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);
          uVar12 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"
                             ,5);
          error(dVar30 / _DAT_0011ed98,0,0,uVar12,pcVar15,uVar4,uVar19,uVar20);
        }
      }
      local_ce0 = fdopen(uVar10,"r");
      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;
      local_cc0 = &end;
    }
    else {
      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);
      piVar16 = __errno_location();
      error(0,*piVar16,&DAT_001207c7,pcVar15);
      local_ce0 = fdopen(uVar10,"r");
      if (local_ce0 == (FILE *)0x0) {
LAB_00104b19:
        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);
        piVar16 = __errno_location();
        error(0,*piVar16,&DAT_001207c7,pcVar15);
        goto LAB_0010468d;
      }
      local_cb8 = 0;
      local_cc0 = (char **)0x0;
    }
    EVar5 = check_existence;
    uVar10 = optind;
    pcVar14 = (char *)(ulong)optind;
    iVar8 = argc - optind;
    local_cd4 = check_existence;
    procdata.endian_state = GetwordEndianStateInitial;
    procdata.count = 0;
    procdata.len = 0;
    procdata.dbfile = local_cf8;
    procdata.fp = (FILE *)local_ce0;
    inspectors = (visitor *)0x0;
    lastinspector = (visitor *)0x0;
    past_pat_inspector = (visitor *)0x0;
    results_were_filtered = false;
    procdata.pathsize = 0x80;
    procdata.original_filename = (char *)xmalloc(0x80);
    sVar17 = fread(procdata.original_filename,1,2,(FILE *)procdata.fp);
    pcVar15 = procdata.original_filename;
    uVar27 = (ulong)(int)sVar17;
    if (2 < uVar27) {
                    /* WARNING: Subroutine does not return */
      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");
    }
    if ((uVar27 < 2) || (procdata.original_filename[1] != '\0')) {
LAB_00105aa4:
      extend(&procdata,10,0);
      sVar23 = fread(procdata.original_filename + uVar27,1,10 - uVar27,(FILE *)procdata.fp);
      iVar26 = (int)sVar17 + (int)sVar23;
      if (((ulong)(long)iVar26 < 10) ||
         (local_ca8 = memcmp(procdata.original_filename,&DAT_0011eb40,10), local_ca8 != 0)) {
        extend(&procdata,0x100,0);
        if ((0xff < iVar26) ||
           (sVar17 = fread(procdata.original_filename + iVar26,1,(long)(0x100 - iVar26),
                           (FILE *)procdata.fp), iVar26 + (int)sVar17 == 0x100)) {
          pcVar15 = procdata.bigram1;
          pcVar21 = procdata.original_filename;
          do {
            *pcVar15 = *pcVar21;
            pcVar15[0x80] = pcVar21[1];
            pcVar21 = pcVar21 + 2;
            pcVar15 = pcVar15 + 1;
          } while (pcVar15 != procdata.bigram2);
          add_visitor(visit_old_format,(void *)0x0);
          local_cac = local_cc8;
          local_ca0 = "old";
          local_ca8 = 1;
          goto LAB_0010543a;
        }
        pcVar14 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);
        uVar20 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);
        error(1,0,uVar20,pcVar14);
LAB_00104daa:
        uVar10 = (uint)pcVar14;
        add_visitor(visit_basename,(void *)0x0);
      }
      else {
        add_visitor(visit_locate02_format,(void *)0x0);
        local_ca0 = "GNU LOCATE02";
        local_cac = 0;
LAB_0010543a:
        if (local_cc4 != 0) goto LAB_00104daa;
      }
      if (0 < iVar8) {
        ppcVar28 = argv + (int)uVar10;
        do {
          results_were_filtered = true;
          pcVar15 = *ppcVar28;
          if (local_d04 == 0) {
            pcVar14 = strpbrk(pcVar15,"*?[]\\");
            if (pcVar14 == (char *)0x0) {
              sVar17 = __ctype_get_mb_cur_max();
              if (sVar17 == 1) {
                fn = visit_substring_match_nocasefold_narrow;
                if (unaff_R15D != 0) {
                  fn = visit_substring_match_casefold_narrow;
                }
              }
              else {
                fn = visit_substring_match_nocasefold_wide;
                if (unaff_R15D != 0) {
                  fn = visit_substring_match_casefold_wide;
                }
              }
              add_visitor(fn,pcVar15);
            }
            else {
              if (unaff_R15D == 0) goto LAB_00104ee7;
              add_visitor(visit_globmatch_casefold,pcVar15);
            }
          }
          else {
            bufp = (re_pattern_buffer *)xmalloc(0x40);
            bufp->buffer = (re_dfa_t *)0x0;
            bufp->allocated = 0;
            bufp->used = 0;
            bufp->syntax = 0;
            bufp->fastmap = (char *)0x0;
            bufp->translate = (uchar *)0x0;
            bufp->re_nsub = 0;
            *(undefined8 *)&bufp->field_0x38 = 0;
            rpl_re_set_syntax((long)(int)uVar9);
            bufp->allocated = 100;
            prVar13 = (re_dfa_t *)xmalloc(100);
            bufp->buffer = prVar13;
            bufp->fastmap = (char *)0x0;
            bufp->syntax = (long)(int)uVar9;
            bufp->translate = (uchar *)0x0;
            uVar27 = 0xffffffffffffffff;
            pcVar14 = pcVar15;
            do {
              if (uVar27 == 0) break;
              uVar27 = uVar27 - 1;
              cVar1 = *pcVar14;
              pcVar14 = pcVar14 + (ulong)bVar29 * -2 + 1;
            } while (cVar1 != '\0');
            pcVar14 = rpl_re_compile_pattern(pcVar15,~uVar27 - 1,bufp);
            if (pcVar14 == (char *)0x0) {
              add_visitor(visit_regex,bufp);
            }
            else {
              error(1,0,&DAT_001207c7,pcVar14);
LAB_00104ee7:
              add_visitor(visit_globmatch_nofold,pcVar15);
            }
          }
          ppcVar28 = ppcVar28 + 1;
        } while (ppcVar28 != argv + (long)(int)uVar10 + (ulong)(iVar8 - 1) + 1);
      }
      pvVar6 = lastinspector;
      if (local_cd4 == ACCEPT_EXISTING) {
        results_were_filtered = true;
        if (follow_symlinks == 0) {
          add_visitor(visit_existing_nofollow,(void *)0x0);
        }
        else {
          add_visitor(visit_existing_follow,(void *)0x0);
        }
      }
      else if (local_cd4 == ACCEPT_NON_EXISTING) {
        results_were_filtered = true;
        if (follow_symlinks == 0) {
          add_visitor(visit_non_existing_nofollow,(void *)0x0);
        }
        else {
          add_visitor(visit_non_existing_follow,(void *)0x0);
        }
      }
      if (local_cec != 0) {
        add_visitor(visit_stats,&statistics);
      }
      if (local_cb0 != 0) {
        if (print_quoted_filename == false) {
          add_visitor(visit_justprint_unquoted,(void *)0x0);
        }
        else {
          add_visitor(visit_justprint_quoted,(void *)0x0);
        }
      }
      if (local_cd8 == 0) {
        add_visitor(visit_count,&limits);
      }
      else {
        add_visitor(visit_limit,&limits);
      }
      pcVar15 = procdata.dbfile;
      if (iVar8 < 2) {
        mainprocessor = process_simple;
      }
      else {
        past_pat_inspector = pvVar6->next;
        if (local_c98 == 0) {
          mainprocessor = process_or;
        }
        else {
          mainprocessor = process_and;
        }
      }
      if (local_cec != 0) {
        uVar20 = dcgettext(0,"Database %s is in the %s format.\n",5);
        __printf_chk(1,uVar20,pcVar15,local_ca0);
      }
      procdata.c = getc((FILE *)procdata.fp);
      if ((procdata.c != -1) && (local_cac != 0)) {
        ungetc(procdata.c,(FILE *)procdata.fp);
        procdata.c = 0;
      }
      do {
        if (procdata.c == -1) break;
        iVar26 = (*mainprocessor)(&procdata);
      } while (iVar26 != 8);
      if (local_cec != 0) {
        if (local_ca8 != 0) {
          uVar20 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);
          uVar19 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);
          if (procdata.endian_state == GetwordEndianStateNative) {
            __printf_chk(1,&DAT_001207c7,uVar20);
          }
          else if (procdata.endian_state == GetwordEndianStateSwab) {
            __printf_chk(1,&DAT_001207c7,uVar19);
          }
          else {
            uVar20 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);
            __printf_chk(1,uVar20);
          }
        }
        if (local_cc0 != (char **)0x0 || local_cb8 != 0) {
          if ((local_cc0 != (char **)0x0) &&
             (__tp = localtime((time_t *)local_cc0), __tp != (tm *)0x0)) {
            sVar17 = strftime(hbuf4,0x14,"%Y:%m:%d %H:%M:%S",__tp);
            if (sVar17 != 0x13) {
                    /* WARNING: Subroutine does not return */
              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");
            }
            if (hbuf4[0x13] != '\0') {
                    /* WARNING: Subroutine does not return */
              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");
            }
            if (hbuf4[0x12] == '\0') {
                    /* WARNING: Subroutine does not return */
              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");
            }
            pcVar15 = local_cc0[1];
            uVar20 = dcgettext(0,"Database was last modified at %s.%09ld",5);
            __printf_chk(1,uVar20,hbuf4,pcVar15);
            sVar17 = strftime(hbuf4,0x14,"%z",__tp);
            if (sVar17 != 5) {
                    /* WARNING: Subroutine does not return */
              __assert_fail("printed == 5","locate.c",0x351,"print_stats");
            }
            __printf_chk(1," %s\n",hbuf4);
          }
          pcVar15 = human_readable(local_cb8,hbuf1,0,1,1);
          uVar20 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"
                              ,local_cb8,5);
          __printf_chk(1,uVar20,pcVar15);
          pcVar15 = human_readable(statistics.total_filename_count,hbuf1,0,1,1);
          if (results_were_filtered == false) {
            uVar20 = dcgettext(0,"All Filenames: %s\n",5);
          }
          else {
            uVar20 = dcgettext(0,"Matching Filenames: %s\n",5);
          }
          __printf_chk(1,uVar20,pcVar15);
          pcVar15 = human_readable(statistics.highbit_filename_count,hbuf4,0,1,1);
          pcVar14 = human_readable(statistics.newline_count,hbuf3,0,1,1);
          pcVar21 = human_readable(statistics.whitespace_count,hbuf2,0,1,1);
          pcVar22 = human_readable(statistics.total_filename_length,hbuf1,0,1,1);
          uVar20 = dcgettext(0,
                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"
                             ,5);
          __printf_chk(1,uVar20,pcVar22,pcVar21,pcVar14,pcVar15);
          if (iVar8 == 0) {
            if (results_were_filtered == false) {
              if (statistics.total_filename_length == 0) {
                uVar20 = dcgettext(0,"Compression ratio is undefined\n",5);
                __printf_chk(1,uVar20);
              }
              else {
                local_ce8 = (double)statistics.total_filename_length;
                uVar20 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);
                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar20)
                ;
              }
            }
            else {
              uVar20 = dcgettext(0,
                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"
                                 ,5);
              __printf_chk(1,uVar20);
            }
          }
          putchar(10);
        }
      }
      iVar8 = ferror((FILE *)procdata.fp);
      uVar25 = limits.items_accepted;
      if (iVar8 != 0) {
        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);
        piVar16 = __errno_location();
        error(0,*piVar16,&DAT_001207c7,pcVar15);
        uVar25 = 0;
      }
    }
    else {
      ppuVar18 = __ctype_b_loc();
      if ((*(byte *)((long)*ppuVar18 + (ulong)(byte)*pcVar15 * 2 + 1) & 8) == 0) goto LAB_00105aa4;
      iVar26 = *pcVar15 + -0x30;
      if (iVar26 < 2) {
        if (iVar26 == 1) {
          if (check_existence == ACCEPT_NON_EXISTING) {
            uVar20 = dcgettext(0,
                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"
                               ,5);
            error(0,0,uVar20);
            uVar25 = 0;
            goto LAB_0010514b;
          }
          if ((EVar5 != ACCEPT_EXISTING) &&
             (local_cd4 = ACCEPT_EXISTING, local_cb0 != 0 || local_cec != 0)) {
            pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);
            uVar20 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);
            error(0,0,uVar20,pcVar15);
            local_cd4 = ACCEPT_EXISTING;
          }
        }
        add_visitor(visit_locate02_format,(void *)0x0);
        local_ca8 = local_cc8;
        local_ca0 = "slocate";
        local_cac = 1;
        goto LAB_0010543a;
      }
      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);
      uVar20 = dcgettext(0,
                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"
                         ,5);
      error(0,0,uVar20,pcVar15,0);
      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);
      uVar20 = dcgettext(0,
                         "%s is an slocate database of unsupported security level %d; skipping it.",
                         5);
      error(0,0,uVar20,pcVar15,iVar26);
      uVar25 = 0;
    }
LAB_0010514b:
    iVar8 = fclose(local_ce0);
    if (iVar8 == -1) {
      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);
      piVar16 = __errno_location();
      error(0,*piVar16,&DAT_001207c7,pcVar15);
      goto LAB_0010468d;
    }
    if (local_cd0 != (char *)0x0) {
      free(local_cd0);
    }
    if ((local_d00 == (char *)0x0) ||
       (_Var7 = splitstring(local_d00,":",false,&path_element_pos,&path_element_len), !_Var7))
    break;
  }
  if (local_c94 != 0) {
    __printf_chk(1,&DAT_0011ea67,uVar25);
  }
  if ((uVar25 == 0) && ((local_cd8 == 0 || (limits.limit != 0)))) {
    local_cc8 = (uint)(local_cec == 0);
  }
LAB_0010468d:
  if (lVar2 != *(long *)(in_FS_OFFSET + 0x28)) {
                    /* WARNING: Subroutine does not return */
    __stack_chk_fail();
  }
  return local_cc8;
}



/* WARNING: Removing unreachable block (ram,0x00105539) */
/* WARNING: Removing unreachable block (ram,0x00105514) */
/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */

ulong FUN_001042fa(uint param_1,long *param_2,undefined8 param_3)

{
  char *pcVar1;
  char cVar2;
  int iVar3;
  uint uVar4;
  int iVar5;
  ulong uVar6;
  time_t tVar7;
  byte *pbVar8;
  undefined8 *puVar9;
  long lVar10;
  char *pcVar11;
  undefined8 uVar12;
  int *piVar13;
  size_t sVar14;
  ushort **ppuVar15;
  tm *__tp;
  undefined8 uVar16;
  undefined8 uVar17;
  undefined8 uVar18;
  undefined8 uVar19;
  size_t sVar20;
  byte *pbVar21;
  undefined *puVar22;
  int iVar23;
  undefined4 *unaff_RBP;
  ulong uVar24;
  code *pcVar25;
  int unaff_R12D;
  long *plVar26;
  int unaff_R15D;
  long in_FS_OFFSET;
  byte bVar27;
  double dVar28;
  int local_d04;
  char *local_d00;
  char *local_cf8;
  uint local_cf0;
  int local_cec;
  double local_ce8;
  FILE *local_ce0;
  uint local_cd8;
  int local_cd4;
  char *local_cd0;
  uint local_cc8;
  int local_cc4;
  time_t *local_cc0;
  ulong local_cb8;
  int local_cb0;
  uint local_cac;
  uint local_ca8;
  uint local_ca4;
  char *local_ca0;
  int local_c98;
  int local_c94;
  uint local_c90;
  char local_c89;
  long local_c80;
  size_t local_c78;
  undefined4 local_c70;
  undefined4 uStack_c6c;
  time_t local_c68;
  long local_c60;
  stat local_c58;
  int local_bc8 [4];
  byte *local_bb8;
  undefined8 local_bb0;
  FILE *local_ba0;
  char *local_b98;
  int local_b90;
  byte local_b8c [128];
  byte local_b0c [132];
  undefined1 local_a88 [656];
  undefined1 local_7f8 [656];
  undefined1 local_568 [656];
  char local_2d8 [18];
  char local_2c6;
  char local_2c5;
  long local_40;
  
  bVar27 = 0;
  local_ca4 = (uint)param_3;
  local_40 = *(long *)(in_FS_OFFSET + 0x28);
  if (*param_2 == 0) {
    FUN_0010b3a9("locate",param_2,param_3,0);
  }
  else {
    FUN_0010b3a9();
  }
  setlocale(6,"");
  bindtextdomain("findutils","/usr/share/locale");
  textdomain("findutils");
  DAT_00126290 = FUN_0010c71d(0);
  iVar3 = FUN_0011d670(FUN_001064e7);
  if ((iVar3 == 0) && (local_cc8 = FUN_0011d670(FUN_001038f1), local_cc8 == 0)) {
    DAT_00126270 = 0;
    DAT_00126278 = 0;
    DAT_00126289 = '\x01';
    local_d00 = getenv("LOCATE_PATH");
    DAT_00126200 = 0;
    unaff_RBP = &local_c70;
    puVar22 = &DAT_0011eb4c;
    unaff_R12D = 1;
    local_d04 = 0;
    local_cf0 = 0;
    local_cec = 0;
    local_cb0 = 0;
    local_c98 = 0;
    local_c94 = 0;
    unaff_R15D = 0;
    local_cd8 = local_cc8;
    local_cc4 = 0;
  }
  else {
    puVar22 = (undefined *)dcgettext(0,"The atexit library function failed",5);
    piVar13 = __errno_location();
    error(1,*piVar13,puVar22);
    local_c98 = unaff_R12D;
  }
  while( true ) {
    local_c70 = 0xffffffff;
    iVar3 = getopt_long(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP);
    if (iVar3 == -1) break;
    if (iVar3 - 0x30U < 0x52) {
                    /* WARNING: Could not recover jumptable at 0x00104479. Too many branches */
                    /* WARNING: Treating indirect jump as call */
      uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))();
      return uVar6;
    }
    FUN_00103906(1);
    local_cc4 = unaff_R12D;
  }
  if ((-1 < (int)local_ca4) && (local_d00 != (char *)0x0)) {
    close(local_ca4);
    local_ca4 = 0xffffffff;
  }
  if (local_c94 == 0 && local_cec == 0) {
    if (optind == param_1) {
      uVar12 = dcgettext(0,"pattern argument expected",5);
      sVar14 = 0;
      error(0,0,uVar12);
      FUN_00103906(1);
      goto LAB_00104874;
    }
    local_cb0 = 1;
  }
  else if ((local_cec != 0) && (optind == param_1)) {
    local_cd8 = local_cc8;
  }
  iVar3 = isatty(1);
  DAT_0012628a = iVar3 == 1;
  if (local_d00 != (char *)0x0) {
    FUN_001063f9(local_d00,":",1,&local_c80,&local_c78);
  }
  uVar4 = local_cf0 | 0x400000;
  if (unaff_R15D == 0) {
    uVar4 = local_cf0;
  }
  local_c89 = '\0';
  uVar6 = 0;
  local_c90 = 0xffffffff;
  local_cf0 = uVar4;
  while ((uVar4 = local_ca4, local_cd8 == 0 || (DAT_00126278 < DAT_00126270))) {
    DAT_00126268 = 0;
    DAT_00126260 = 0;
    DAT_00126258 = 0;
    DAT_00126250 = 0;
    DAT_00126248 = 0;
    _DAT_00126240 = 0;
    if (local_d00 == (char *)0x0) {
      if (local_ca4 == 0xffffffff) break;
      local_cf8 = DAT_00126280;
      local_cd0 = local_d00;
      local_ca4 = local_c90;
    }
    else {
      sVar14 = local_c78;
      if (local_c78 == 1) {
LAB_00104874:
        if (local_d00[local_c80] == '-') {
          if (local_c89 == '\0') {
            local_c89 = '\x01';
            local_cf8 = "<stdin>";
            local_cd0 = (char *)0x0;
            uVar4 = local_cc8;
            goto LAB_00105254;
          }
          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);
          error(0,0,uVar12);
          goto LAB_0010468d;
        }
        if (local_d00[local_c80] != '.') goto LAB_00104891;
        local_cf8 = "/var/cache/locate/locatedb";
        local_cd0 = (char *)0x0;
      }
      else {
        local_cf8 = "/var/cache/locate/locatedb";
        local_cd0 = (char *)0x0;
        if (local_c78 != 0) {
LAB_00104891:
          local_cf8 = strndup(local_d00 + local_c80,sVar14);
          local_cd0 = local_cf8;
        }
      }
      uVar4 = FUN_001038af(local_cf8);
      if ((int)uVar4 < 0) {
        uVar12 = FUN_0010ca58(0,8,local_cf8);
        piVar13 = __errno_location();
        error(0,*piVar13,&DAT_001207c7,uVar12);
        goto LAB_0010468d;
      }
    }
LAB_00105254:
    iVar3 = __fxstat(1,uVar4,&local_c58);
    if (iVar3 == 0) {
      local_cb8 = local_c58.st_size;
      local_c68 = local_c58.st_mtim.tv_sec;
      local_c60 = local_c58.st_mtim.tv_nsec;
      tVar7 = time((time_t *)&local_c70);
      if (tVar7 == -1) {
        uVar12 = dcgettext(0,"time system call failed",5);
        piVar13 = __errno_location();
        error(0,*piVar13,uVar12);
      }
      else {
        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);
        iVar3 = DAT_00126018;
        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {
          uVar12 = dcgettext(0,&DAT_0011ed91,5);
          uVar16 = dcgettext(0,&DAT_0011ed91,5);
          uVar17 = FUN_0010ca58(0,8,local_cf8);
          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"
                             ,5);
          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);
        }
      }
      local_ce0 = fdopen(uVar4,"r");
      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;
      local_cc0 = &local_c68;
    }
    else {
      uVar12 = FUN_0010ca58(0,8,local_cf8);
      piVar13 = __errno_location();
      error(0,*piVar13,&DAT_001207c7,uVar12);
      local_ce0 = fdopen(uVar4,"r");
      if (local_ce0 == (FILE *)0x0) {
LAB_00104b19:
        uVar12 = FUN_0010ca58(0,8,local_cf8);
        piVar13 = __errno_location();
        error(0,*piVar13,&DAT_001207c7,uVar12);
        goto LAB_0010468d;
      }
      local_cb8 = 0;
      local_cc0 = (time_t *)0x0;
    }
    iVar3 = DAT_00126200;
    uVar4 = optind;
    uVar6 = (ulong)optind;
    iVar5 = param_1 - optind;
    local_cd4 = DAT_00126200;
    local_b90 = 0;
    local_bc8[1] = 0;
    local_bc8[2] = 0;
    local_b98 = local_cf8;
    local_ba0 = local_ce0;
    DAT_00126220 = 0;
    DAT_00126218 = 0;
    DAT_00126210 = 0;
    DAT_00126288 = '\0';
    local_bb0 = 0x80;
    local_bb8 = (byte *)FUN_0010d559(0x80);
    sVar14 = fread(local_bb8,1,2,local_ba0);
    pbVar8 = local_bb8;
    uVar24 = (ulong)(int)sVar14;
    if (2 < uVar24) {
                    /* WARNING: Subroutine does not return */
      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");
    }
    if ((uVar24 < 2) || (local_bb8[1] != 0)) {
LAB_00105aa4:
      FUN_001040e7(local_bc8,10,0);
      sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0);
      iVar3 = (int)sVar14 + (int)sVar20;
      if (((ulong)(long)iVar3 < 10) ||
         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)) {
        FUN_001040e7(local_bc8,0x100,0);
        if ((0xff < iVar3) ||
           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),
           iVar3 + (int)sVar14 == 0x100)) {
          pbVar8 = local_b8c;
          pbVar21 = local_bb8;
          do {
            *pbVar8 = *pbVar21;
            pbVar8[0x80] = pbVar21[1];
            pbVar21 = pbVar21 + 2;
            pbVar8 = pbVar8 + 1;
          } while (pbVar8 != local_b0c);
          FUN_001039a8(FUN_00104183,0);
          local_cac = local_cc8;
          local_ca0 = "old";
          local_ca8 = 1;
          goto LAB_0010543a;
        }
        uVar6 = FUN_0010ca58(0,8,local_cf8);
        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);
        error(1,0,uVar12,uVar6);
LAB_00104daa:
        uVar4 = (uint)uVar6;
        FUN_001039a8(FUN_00103e25,0);
      }
      else {
        FUN_001039a8(FUN_00103e3d,0);
        local_ca0 = "GNU LOCATE02";
        local_cac = 0;
LAB_0010543a:
        if (local_cc4 != 0) goto LAB_00104daa;
      }
      if (0 < iVar5) {
        plVar26 = param_2 + (int)uVar4;
        do {
          DAT_00126288 = '\x01';
          pcVar1 = (char *)*plVar26;
          if (local_d04 == 0) {
            pcVar11 = strpbrk(pcVar1,"*?[]\\");
            if (pcVar11 == (char *)0x0) {
              sVar14 = __ctype_get_mb_cur_max();
              if (sVar14 == 1) {
                pcVar25 = FUN_00103ce1;
                if (unaff_R15D != 0) {
                  pcVar25 = FUN_00103d36;
                }
              }
              else {
                pcVar25 = FUN_00103ca5;
                if (unaff_R15D != 0) {
                  pcVar25 = FUN_00103cc3;
                }
              }
              FUN_001039a8(pcVar25,pcVar1);
            }
            else {
              if (unaff_R15D == 0) goto LAB_00104ee7;
              FUN_001039a8(FUN_00103db3,pcVar1);
            }
          }
          else {
            puVar9 = (undefined8 *)FUN_0010d559(0x40);
            *puVar9 = 0;
            puVar9[1] = 0;
            puVar9[2] = 0;
            puVar9[3] = 0;
            puVar9[4] = 0;
            puVar9[5] = 0;
            puVar9[6] = 0;
            puVar9[7] = 0;
            FUN_0011b1c7((long)(int)local_cf0);
            puVar9[1] = 100;
            uVar12 = FUN_0010d559(100);
            *puVar9 = uVar12;
            puVar9[4] = 0;
            puVar9[3] = (long)(int)local_cf0;
            puVar9[5] = 0;
            uVar6 = 0xffffffffffffffff;
            pcVar11 = pcVar1;
            do {
              if (uVar6 == 0) break;
              uVar6 = uVar6 - 1;
              cVar2 = *pcVar11;
              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;
            } while (cVar2 != '\0');
            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);
            if (lVar10 == 0) {
              FUN_001039a8(FUN_00103ddb,puVar9);
            }
            else {
              error(1,0,&DAT_001207c7,lVar10);
LAB_00104ee7:
              FUN_001039a8(FUN_00103d8b,pcVar1);
            }
          }
          plVar26 = plVar26 + 1;
        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);
      }
      lVar10 = DAT_00126218;
      if (local_cd4 == 1) {
        DAT_00126288 = '\x01';
        if (DAT_00126014 == 0) {
          FUN_001039a8(FUN_00103b4d,0);
        }
        else {
          FUN_001039a8(FUN_00103bf9,0);
        }
      }
      else if (local_cd4 == 2) {
        DAT_00126288 = '\x01';
        if (DAT_00126014 == 0) {
          FUN_001039a8(FUN_00103ba3,0);
        }
        else {
          FUN_001039a8(FUN_00103c4f,0);
        }
      }
      if (local_cec != 0) {
        FUN_001039a8(FUN_00103a70,&DAT_00126240);
      }
      if (local_cb0 != 0) {
        if (DAT_00126289 == '\0') {
          FUN_001039a8(FUN_001039fb,0);
        }
        else {
          FUN_001039a8(FUN_00103a2b,0);
        }
      }
      if (local_cd8 == 0) {
        FUN_001039a8(FUN_001038a4,&DAT_00126270);
      }
      else {
        FUN_001039a8(FUN_00103887,&DAT_00126270);
      }
      pcVar1 = local_b98;
      if (iVar5 < 2) {
        DAT_00126208 = FUN_00103755;
      }
      else {
        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);
        if (local_c98 == 0) {
          DAT_00126208 = FUN_0010378e;
        }
        else {
          DAT_00126208 = FUN_0010380e;
        }
      }
      if (local_cec != 0) {
        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);
        __printf_chk(1,uVar12,pcVar1,local_ca0);
      }
      local_bc8[0] = getc(local_ba0);
      if ((local_bc8[0] != -1) && (local_cac != 0)) {
        ungetc(local_bc8[0],local_ba0);
        local_bc8[0] = 0;
      }
      do {
        if (local_bc8[0] == -1) break;
        iVar3 = (*DAT_00126208)(local_bc8);
      } while (iVar3 != 8);
      if (local_cec != 0) {
        if (local_ca8 != 0) {
          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);
          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);
          if (local_b90 == 1) {
            __printf_chk(1,&DAT_001207c7,uVar12);
          }
          else if (local_b90 == 2) {
            __printf_chk(1,&DAT_001207c7,uVar16);
          }
          else {
            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);
            __printf_chk(1,uVar12);
          }
        }
        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {
          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {
            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);
            if (sVar14 != 0x13) {
                    /* WARNING: Subroutine does not return */
              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");
            }
            if (local_2c5 != '\0') {
                    /* WARNING: Subroutine does not return */
              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");
            }
            if (local_2c6 == '\0') {
                    /* WARNING: Subroutine does not return */
              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");
            }
            tVar7 = local_cc0[1];
            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);
            __printf_chk(1,uVar12,local_2d8,tVar7);
            sVar14 = strftime(local_2d8,0x14,"%z",__tp);
            if (sVar14 != 5) {
                    /* WARNING: Subroutine does not return */
              __assert_fail("printed == 5","locate.c",0x351,"print_stats");
            }
            __printf_chk(1," %s\n",local_2d8);
          }
          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);
          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"
                              ,local_cb8,5);
          __printf_chk(1,uVar16,uVar12);
          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);
          if (DAT_00126288 == '\0') {
            uVar16 = dcgettext(0,"All Filenames: %s\n",5);
          }
          else {
            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);
          }
          __printf_chk(1,uVar16,uVar12);
          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);
          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);
          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);
          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);
          uVar19 = dcgettext(0,
                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"
                             ,5);
          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);
          if (iVar5 == 0) {
            if (DAT_00126288 == '\0') {
              if (DAT_00126250 == 0) {
                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);
                __printf_chk(1,uVar12);
              }
              else {
                local_ce8 = (double)DAT_00126250;
                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);
                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)
                ;
              }
            }
            else {
              uVar12 = dcgettext(0,
                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"
                                 ,5);
              __printf_chk(1,uVar12);
            }
          }
          putchar(10);
        }
      }
      iVar3 = ferror(local_ba0);
      uVar6 = DAT_00126278;
      if (iVar3 != 0) {
        uVar12 = FUN_0010ca58(0,8,local_b98);
        piVar13 = __errno_location();
        error(0,*piVar13,&DAT_001207c7,uVar12);
        uVar6 = 0;
      }
    }
    else {
      ppuVar15 = __ctype_b_loc();
      if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;
      iVar23 = (char)*pbVar8 + -0x30;
      if (iVar23 < 2) {
        if (iVar23 == 1) {
          if (DAT_00126200 == 2) {
            uVar12 = dcgettext(0,
                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"
                               ,5);
            error(0,0,uVar12);
            uVar6 = 0;
            goto LAB_0010514b;
          }
          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {
            uVar12 = FUN_0010ca58(0,8,local_b98);
            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);
            error(0,0,uVar16,uVar12);
            local_cd4 = 1;
          }
        }
        FUN_001039a8(FUN_00103e3d,0);
        local_ca8 = local_cc8;
        local_ca0 = "slocate";
        local_cac = 1;
        goto LAB_0010543a;
      }
      uVar12 = FUN_0010ca58(0,8,local_b98);
      uVar16 = dcgettext(0,
                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"
                         ,5);
      error(0,0,uVar16,uVar12,0);
      uVar12 = FUN_0010ca58(0,8,local_b98);
      uVar16 = dcgettext(0,
                         "%s is an slocate database of unsupported security level %d; skipping it.",
                         5);
      error(0,0,uVar16,uVar12,iVar23);
      uVar6 = 0;
    }
LAB_0010514b:
    iVar3 = fclose(local_ce0);
    if (iVar3 == -1) {
      uVar12 = FUN_0010ca58(0,8,local_cf8);
      piVar13 = __errno_location();
      error(0,*piVar13,&DAT_001207c7,uVar12);
      goto LAB_0010468d;
    }
    if (local_cd0 != (char *)0x0) {
      free(local_cd0);
    }
    if ((local_d00 == (char *)0x0) ||
       (cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0')) break;
  }
  if (local_c94 != 0) {
    __printf_chk(1,&DAT_0011ea67,uVar6);
  }
  if ((uVar6 == 0) && ((local_cd8 == 0 || (DAT_00126270 != 0)))) {
    local_cc8 = (uint)(local_cec == 0);
  }
LAB_0010468d:
  if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {
                    /* WARNING: Subroutine does not return */
    __stack_chk_fail();
  }
  return (ulong)local_cc8;
}


PUSH R15
PUSH R14
PUSH R13
PUSH R12
PUSH RBP
PUSH RBX
SUB RSP,0xce8
MOV dword ptr [RSP + 0x10],EDI
MOV qword ptr [RSP + 0x8],RSI
MOV dword ptr [RSP + 0x74],EDX
MOV RCX,qword ptr FS:[0x28]
MOV qword ptr [RSP + 0xcd8],RCX
XOR ECX,ECX
MOV RDI,qword ptr [RSI]
TEST RDI,RDI
JZ 0x0010447b
CALL 0x0010b3a9
LEA RSI,[0x11fa01]
MOV EDI,0x6
CALL 0x001034a0
LEA RSI,[0x11e943]
LEA RDI,[0x11ee51]
CALL 0x00103160
LEA RDI,[0x11ee51]
CALL 0x00103130
MOV EDI,0x0
CALL 0x0010c71d
MOV qword ptr [0x00126290],RAX
LEA RDI,[0x1064e7]
CALL 0x0011d670
TEST EAX,EAX
JNZ 0x0010448c
LEA RDI,[0x1038f1]
CALL 0x0011d670
MOV dword ptr [RSP + 0x50],EAX
TEST EAX,EAX
JNZ 0x0010448c
MOV qword ptr [0x00126270],0x0
MOV qword ptr [0x00126278],0x0
MOV byte ptr [0x00126289],0x1
LEA RDI,[0x11e955]
CALL 0x00103040
MOV qword ptr [RSP + 0x18],RAX
MOV dword ptr [0x00126200],0x0
MOV R15D,dword ptr [RSP + 0x50]
MOV dword ptr [RSP + 0x80],R15D
MOV dword ptr [RSP + 0x2c],R15D
MOV dword ptr [RSP + 0x28],R15D
MOV dword ptr [RSP + 0x14],R15D
MOV dword ptr [RSP + 0x40],R15D
MOV dword ptr [RSP + 0x54],R15D
MOV dword ptr [RSP + 0x84],R15D
MOV dword ptr [RSP + 0x68],R15D
LEA RBP,[RSP + 0xa8]
LEA RBX,[0x11eb4c]
MOV R12D,0x1
LEA R13,[RSP + 0xb0]
MOV dword ptr [RSP + 0xa8],0xffffffff
MOV R8,RBP
LEA RCX,[0x125720]
LEA RDX,[0x11e961]
MOV RSI,qword ptr [RSP + 0x8]
MOV EDI,dword ptr [RSP + 0x10]
CALL 0x001031c0
CMP EAX,-0x1
JZ 0x0010477a
SUB EAX,0x30
CMP EAX,0x51
JA 0x00104766
MOV EAX,EAX
MOVSXD RAX,dword ptr [RBX + RAX*0x4]
ADD RAX,RBX
JMP RAX
LEA RDI,[0x11e92b]
CALL 0x0010b3a9
JMP 0x0010433c
MOV EDX,0x5
LEA RSI,[0x11e248]
MOV EDI,0x0
CALL 0x00103170
MOV RBX,RAX
CALL 0x00103090
MOV RDX,RBX
MOV ESI,dword ptr [RAX]
MOV EDI,0x1
MOV EAX,0x0
CALL 0x001034f0
MOV dword ptr [RSP + 0x80],R12D
JMP 0x00104431
MOV EAX,dword ptr [RSP + 0x50]
MOV RDX,qword ptr [RSP + 0xcd8]
XOR RDX,qword ptr FS:[0x28]
JNZ 0x00105b5c
ADD RSP,0xce8
POP RBX
POP RBP
POP R12
POP R13
POP R14
POP R15
RET
MOV EDI,0x1
CALL 0x00103906
MOV dword ptr [RSP + 0x54],R12D
JMP 0x00104431
MOV R14D,EAX
MOV EDI,dword ptr [RSP + 0x74]
TEST EDI,EDI
JS 0x00104791
CMP qword ptr [RSP + 0x18],0x0
JNZ 0x0010482e
MOV EAX,dword ptr [RSP + 0x84]
OR EAX,dword ptr [RSP + 0x2c]
JZ 0x00105b3f
CMP dword ptr [RSP + 0x2c],0x0
JZ 0x001047c0
MOV EAX,dword ptr [RSP + 0x10]
CMP dword ptr [0x001261b0],EAX
MOV EAX,dword ptr [RSP + 0x40]
CMOVZ EAX,dword ptr [RSP + 0x50]
MOV dword ptr [RSP + 0x40],EAX
MOV EDI,0x1
CALL 0x001030e0
CMP EAX,0x1
SETZ byte ptr [0x0012628a]
MOV RDI,qword ptr [RSP + 0x18]
TEST RDI,RDI
JZ 0x001047ff
LEA RCX,[RSP + 0x98]
LEA R8,[RSP + 0xa0]
MOV EDX,0x1
LEA RSI,[0x1207bb]
CALL 0x001063f9
MOV EDX,dword ptr [RSP + 0x28]
MOV EAX,EDX
OR EAX,0x400000
TEST R15D,R15D
CMOVZ EAX,EDX
MOV dword ptr [RSP + 0x28],EAX
MOV byte ptr [RSP + 0x8f],0x0
MOV EBX,0x0
MOV dword ptr [RSP + 0x88],R14D
JMP 0x001051a7
CALL 0x001032b0
MOV dword ptr [RSP + 0x74],R14D
JMP 0x00104791
MOV EDX,0x5
LEA RSI,[0x11e985]
MOV EDI,0x0
CALL 0x00103170
MOV RDX,RAX
MOV ESI,0x0
MOV EDI,0x0
MOV EAX,0x0
CALL 0x001034f0
MOV EDI,0x1
CALL 0x00103906
MOV RAX,qword ptr [RSP + 0x98]
MOV RDX,qword ptr [RSP + 0x18]
MOVZX EAX,byte ptr [RDX + RAX*0x1]
CMP AL,0x2d
JZ 0x001048b2
CMP AL,0x2e
JZ 0x00104914
MOV RDI,qword ptr [RSP + 0x18]
ADD RDI,qword ptr [RSP + 0x98]
CALL 0x001032e0
MOV qword ptr [RSP + 0x48],RAX
MOV qword ptr [RSP + 0x20],RAX
JMP 0x00105240
CMP byte ptr [RSP + 0x8f],0x0
JNZ 0x001048e2
MOV EBX,dword ptr [RSP + 0x50]
MOV byte ptr [RSP + 0x8f],0x1
LEA RAX,[0x11e922]
MOV qword ptr [RSP + 0x20],RAX
MOV qword ptr [RSP + 0x48],0x0
JMP 0x00105254
MOV EDX,0x5
LEA RSI,[0x11e2e8]
MOV EDI,0x0
CALL 0x00103170
MOV RDX,RAX
MOV ESI,0x0
MOV EDI,0x0
MOV EAX,0x0
CALL 0x001034f0
JMP 0x0010468d
LEA RAX,[0x11e907]
MOV qword ptr [RSP + 0x20],RAX
MOV qword ptr [RSP + 0x48],0x0
JMP 0x00105240
MOV RDX,qword ptr [RSP + 0x20]
MOV ESI,0x8
MOV EDI,0x0
CALL 0x0010ca58
MOV RBX,RAX
CALL 0x00103090
MOV RCX,RBX
LEA RDX,[0x1207c7]
MOV ESI,dword ptr [RAX]
MOV EDI,0x0
MOV EAX,0x0
CALL 0x001034f0
JMP 0x0010468d
MOV EAX,dword ptr [RSP + 0x74]
CMP EAX,-0x1
JZ 0x00105a4d
MOV RDX,qword ptr [0x00126280]
MOV qword ptr [RSP + 0x20],RDX
MOV EBX,EAX
MOV RAX,qword ptr [RSP + 0x18]
MOV qword ptr [RSP + 0x48],RAX
MOV EAX,dword ptr [RSP + 0x88]
MOV dword ptr [RSP + 0x74],EAX
JMP 0x00105254
MOV RAX,qword ptr [RSP + 0xf0]
MOV qword ptr [RSP + 0x60],RAX
MOV RAX,qword ptr [RSP + 0x118]
MOV qword ptr [RSP + 0xb0],RAX
MOV RAX,qword ptr [RSP + 0x120]
MOV qword ptr [RSP + 0xb8],RAX
LEA RDI,[RSP + 0xa8]
CALL 0x00103380
CMP RAX,-0x1
JZ 0x00104a49
MOV RSI,qword ptr [RSP + 0x118]
MOV RDI,qword ptr [RSP + 0xa8]
CALL 0x001031f0
MOVAPD XMM1,XMM0
MOVSD qword ptr [RSP + 0x30],XMM0
MOV EBP,dword ptr [0x00126018]
IMUL EAX,EBP,0x15180
MOV EAX,EAX
PXOR XMM0,XMM0
CVTSI2SD XMM0,RAX
COMISD XMM1,XMM0
JA 0x00104a7d
LEA RSI,[0x11ee4b]
MOV EDI,EBX
CALL 0x00103490
MOV qword ptr [RSP + 0x38],RAX
TEST RAX,RAX
JZ 0x00104b19
LEA RAX,[RSP + 0xb0]
MOV qword ptr [RSP + 0x58],RAX
JMP 0x001052d5
MOV EDX,0x5
LEA RSI,[0x11e99f]
MOV EDI,0x0
CALL 0x00103170
MOV RBP,RAX
CALL 0x00103090
MOV RDX,RBP
MOV ESI,dword ptr [RAX]
MOV EDI,0x0
MOV EAX,0x0
CALL 0x001034f0
JMP 0x00104a1b
MOV EDX,0x5
LEA RSI,[0x11ed91]
MOV EDI,0x0
CALL 0x00103170
MOV R14,RAX
MOV EDX,0x5
LEA RSI,[0x11ed91]
MOV EDI,0x0
CALL 0x00103170
MOV R13,RAX
MOV RDX,qword ptr [RSP + 0x20]
MOV ESI,0x8
MOV EDI,0x0
CALL 0x0010ca58
MOV R12,RAX
MOV EDX,0x5
LEA RSI,[0x11e328]
MOV EDI,0x0
CALL 0x00103170
MOVSD XMM0,qword ptr [RSP + 0x30]
DIVSD XMM0,qword ptr [0x0011ed98]
SUB RSP,0x8
PUSH R14
MOV R9,R13
MOV R8D,EBP
MOV RCX,R12
MOV RDX,RAX
MOV ESI,0x0
MOV EDI,0x0
MOV EAX,0x1
CALL 0x001034f0
ADD RSP,0x10
JMP 0x00104a1b
MOV RDX,qword ptr [RSP + 0x20]
MOV ESI,0x8
MOV EDI,0x0
CALL 0x0010ca58
MOV RBX,RAX
CALL 0x00103090
MOV RCX,RBX
LEA RDX,[0x1207c7]
MOV ESI,dword ptr [RAX]
MOV EDI,0x0
MOV EAX,0x0
CALL 0x001034f0
JMP 0x0010468d
LEA RCX,[0x11ecb0]
MOV EDX,0x3a5
LEA RSI,[0x11e899]
LEA RDI,[0x11e9b7]
CALL 0x00103230
MOV RDX,qword ptr [RSP + 0x180]
MOV ESI,0x8
MOV EDI,0x0
CALL 0x0010ca58
MOV RBX,RAX
MOV EDX,0x5
LEA RSI,[0x11e370]
MOV EDI,0x0
CALL 0x00103170
MOV R8D,0x0
MOV RCX,RBX
MOV RDX,RAX
MOV ESI,0x0
MOV EDI,0x0
MOV EAX,0x0
CALL 0x001034f0
MOV RDX,qword ptr [RSP + 0x180]
MOV ESI,0x8
MOV EDI,0x0
CALL 0x0010ca58
MOV RBX,RAX
MOV EDX,0x5
LEA RSI,[0x11e400]
MOV EDI,0x0
CALL 0x00103170
MOV R8D,EBP
MOV RCX,RBX
MOV RDX,RAX
MOV ESI,0x0
MOV EDI,0x0
MOV EAX,0x0
CALL 0x001034f0
MOV EBX,0x0
JMP 0x0010514b
MOV EDX,0x5
LEA RSI,[0x11e450]
MOV EDI,0x0
CALL 0x00103170
MOV RDX,RAX
MOV ESI,0x0
MOV EDI,0x0
MOV EAX,0x0
CALL 0x001034f0
MOV EBX,0x0
JMP 0x0010514b
MOV RDX,qword ptr [RSP + 0x180]
MOV ESI,0x8
MOV EDI,0x0
CALL 0x0010ca58
MOV RBP,RAX
MOV EDX,0x5
LEA RSI,[0x11e500]
MOV EDI,0x0
CALL 0x00103170
MOV RCX,RBP
MOV RDX,RAX
MOV ESI,0x0
MOV EDI,0x0
MOV EAX,0x0
CALL 0x001034f0
MOV dword ptr [RSP + 0x44],0x1
JMP 0x0010540d
LEA RDI,[RSP + 0x150]
MOV EDX,0x0
MOV ESI,0x100
CALL 0x001040e7
CMP R12D,0xff
JG 0x00104cfd
MOV EDX,0x100
SUB EDX,R12D
MOVSXD RDX,EDX
MOV RDI,RBP
ADD RDI,qword ptr [RSP + 0x160]
MOV RCX,qword ptr [RSP + 0x178]
MOV ESI,0x1
CALL 0x001030f0
ADD R12D,EAX
CMP R12D,0x100
JNZ 0x00104d63
MOV RDX,qword ptr [RSP + 0x160]
LEA RAX,[RSP + 0x18c]
LEA RSI,[RSP + 0x20c]
MOVZX ECX,byte ptr [RDX]
MOV byte ptr [RAX],CL
MOVZX ECX,byte ptr [RDX + 0x1]
MOV byte ptr [RAX + 0x80],CL
ADD RDX,0x2
ADD RAX,0x1
CMP RAX,RSI
JNZ 0x00104d15
MOV ESI,0x0
LEA RDI,[0x104183]
CALL 0x001039a8
MOV EAX,dword ptr [RSP + 0x50]
MOV dword ptr [RSP + 0x6c],EAX
LEA RAX,[0x11e93f]
MOV qword ptr [RSP + 0x78],RAX
MOV dword ptr [RSP + 0x70],0x1
JMP 0x0010543a
MOV RDX,qword ptr [RSP + 0x20]
MOV ESI,0x8
MOV EDI,0x0
CALL 0x0010ca58
MOV RBX,RAX
MOV EDX,0x5
LEA RSI,[0x11e538]
MOV EDI,0x0
CALL 0x00103170
MOV RCX,RBX
MOV RDX,RAX
MOV ESI,0x0
MOV EDI,0x1
MOV EAX,0x0
CALL 0x001034f0
MOV ESI,0x0
LEA RDI,[0x103e25]
CALL 0x001039a8
JMP 0x00105445
MOV EDI,0x40
CALL 0x0010d559
MOV RBX,RAX
MOV qword ptr [RAX],0x0
MOV qword ptr [RAX + 0x8],0x0
MOV qword ptr [RAX + 0x10],0x0
MOV qword ptr [RAX + 0x18],0x0
MOV qword ptr [RAX + 0x20],0x0
MOV qword ptr [RAX + 0x28],0x0
MOV qword ptr [RAX + 0x30],0x0
MOV qword ptr [RAX + 0x38],0x0
MOVSXD R13,dword ptr [RSP + 0x28]
MOV RDI,R13
CALL 0x0011b1c7
MOV qword ptr [RBX + 0x8],0x64
MOV EDI,0x64
CALL 0x0010d559
MOV qword ptr [RBX],RAX
MOV qword ptr [RBX + 0x20],0x0
MOV qword ptr [RBX + 0x18],R13
MOV qword ptr [RBX + 0x28],0x0
MOV RCX,-0x1
MOV EAX,0x0
MOV RDI,RBP
SCASB.REPNE RDI
MOV RDX,RCX
NOT RDX
LEA RSI,[RDX + -0x1]
MOV RDX,RBX
MOV RDI,RBP
CALL 0x0011b159
TEST RAX,RAX
JNZ 0x00104ec9
MOV RSI,RBX
LEA RDI,[0x103ddb]
CALL 0x001039a8
ADD R12,0x8
CMP R12,R14
JZ 0x00104f3c
MOV byte ptr [0x00126288],0x1
MOV RBP,qword ptr [R12]
CMP dword ptr [RSP + 0x14],0x0
JNZ 0x00104dc0
LEA RSI,[0x11e9c0]
MOV RDI,RBP
CALL 0x00103460
TEST RAX,RAX
JZ 0x00104ef8
TEST R15D,R15D
JZ 0x00104ee7
MOV RSI,RBP
LEA RDI,[0x103db3]
CALL 0x001039a8
JMP 0x00104e7c
MOV RCX,RAX
LEA RDX,[0x1207c7]
MOV ESI,0x0
MOV EDI,0x1
MOV EAX,0x0
CALL 0x001034f0
MOV RSI,RBP
LEA RDI,[0x103d8b]
CALL 0x001039a8
JMP 0x00104e7c
CALL 0x00103180
CMP RAX,0x1
JZ 0x00104f25
TEST R15D,R15D
LEA RDI,[0x103ca5]
LEA RAX,[0x103cc3]
CMOVNZ RDI,RAX
MOV RSI,RBP
CALL 0x001039a8
JMP 0x00104e7c
TEST R15D,R15D
LEA RDI,[0x103ce1]
LEA RAX,[0x103d36]
CMOVNZ RDI,RAX
JMP 0x00104f18
MOV RBX,qword ptr [0x00126218]
MOV EAX,dword ptr [RSP + 0x44]
CMP EAX,0x1
JZ 0x00104fde
CMP EAX,0x2
JZ 0x0010501a
CMP dword ptr [RSP + 0x2c],0x0
JNZ 0x00105056
CMP dword ptr [RSP + 0x68],0x0
JZ 0x00104f89
CMP byte ptr [0x00126289],0x0
JZ 0x0010506e
MOV ESI,0x0
LEA RDI,[0x103a2b]
CALL 0x001039a8
CMP dword ptr [RSP + 0x40],0x0
JZ 0x00105084
LEA RSI,[0x126270]
LEA RDI,[0x103887]
CALL 0x001039a8
CMP dword ptr [RSP + 0x30],0x1
JLE 0x001050ac
MOV RAX,qword ptr [RBX + 0x10]
MOV qword ptr [0x00126210],RAX
CMP dword ptr [RSP + 0x80],0x0
JZ 0x0010509c
LEA RAX,[0x10380e]
MOV qword ptr [0x00126208],RAX
JMP 0x001050ba
MOV byte ptr [0x00126288],0x1
CMP dword ptr [0x00126014],0x0
JZ 0x00105004
MOV ESI,0x0
LEA RDI,[0x103bf9]
CALL 0x001039a8
JMP 0x00104f59
MOV ESI,0x0
LEA RDI,[0x103b4d]
CALL 0x001039a8
JMP 0x00104f59
MOV byte ptr [0x00126288],0x1
CMP dword ptr [0x00126014],0x0
JZ 0x00105040
MOV ESI,0x0
LEA RDI,[0x103c4f]
CALL 0x001039a8
JMP 0x00104f59
MOV ESI,0x0
LEA RDI,[0x103ba3]
CALL 0x001039a8
JMP 0x00104f59
LEA RSI,[0x126240]
LEA RDI,[0x103a70]
CALL 0x001039a8
JMP 0x00104f64
MOV ESI,0x0
LEA RDI,[0x1039fb]
CALL 0x001039a8
JMP 0x00104f89
LEA RSI,[0x126270]
LEA RDI,[0x1038a4]
CALL 0x001039a8
JMP 0x00104fa7
LEA RAX,[0x10378e]
MOV qword ptr [0x00126208],RAX
JMP 0x001050ba
LEA RAX,[0x103755]
MOV qword ptr [0x00126208],RAX
CMP dword ptr [RSP + 0x2c],0x0
JNZ 0x00105470
MOV RDI,qword ptr [RSP + 0x178]
CALL 0x00103600
MOV dword ptr [RSP + 0x150],EAX
CMP EAX,-0x1
JZ 0x001050e9
CMP dword ptr [RSP + 0x6c],0x0
JNZ 0x001054ad
LEA RBX,[RSP + 0x150]
CMP dword ptr [RSP + 0x150],-0x1
JZ 0x00105109
MOV RDI,RBX
CALL qword ptr [0x00126208]
CMP EAX,0x8
JNZ 0x001050f1
CMP dword ptr [RSP + 0x2c],0x0
JZ 0x0010512b
CMP dword ptr [RSP + 0x70],0x0
JNZ 0x001054cc
MOV RAX,qword ptr [RSP + 0x58]
OR RAX,qword ptr [RSP + 0x60]
JNZ 0x00105588
MOV RDI,qword ptr [RSP + 0x178]
CALL 0x001030d0
TEST EAX,EAX
JNZ 0x001059cd
LEA RAX,[0x126270]
MOV RBX,qword ptr [RAX + 0x8]
MOV RDI,qword ptr [RSP + 0x38]
CALL 0x00103150
CMP EAX,-0x1
JZ 0x00105a11
MOV RAX,qword ptr [RSP + 0x48]
TEST RAX,RAX
JZ 0x00105170
MOV RDI,RAX
CALL 0x00103050
MOV RDI,qword ptr [RSP + 0x18]
TEST RDI,RDI
JZ 0x00105a4d
LEA RCX,[RSP + 0x98]
LEA R8,[RSP + 0xa0]
MOV EDX,0x0
LEA RSI,[0x1207bb]
CALL 0x001063f9
TEST AL,AL
JZ 0x00105a4d
CMP dword ptr [RSP + 0x40],0x0
JZ 0x001051c2
LEA RAX,[0x126270]
MOV RDX,qword ptr [RAX + 0x8]
CMP qword ptr [RAX],RDX
JBE 0x00105a4d
MOV qword ptr [0x00126268],0x0
MOV qword ptr [0x00126260],0x0
MOV qword ptr [0x00126258],0x0
MOV qword ptr [0x00126250],0x0
MOV qword ptr [0x00126248],0x0
MOV qword ptr [0x00126240],0x0
CMP qword ptr [RSP + 0x18],0x0
JZ 0x0010496a
MOV RSI,qword ptr [RSP + 0xa0]
CMP RSI,0x1
JZ 0x00104874
LEA RAX,[0x11e907]
MOV qword ptr [RSP + 0x20],RAX
MOV qword ptr [RSP + 0x48],0x0
TEST RSI,RSI
JNZ 0x00104891
MOV RDI,qword ptr [RSP + 0x20]
CALL 0x001038af
MOV EBX,EAX
TEST EAX,EAX
JS 0x0010492e
LEA RDX,[RSP + 0xc0]
MOV ESI,EBX
MOV EDI,0x1
CALL 0x00103450
TEST EAX,EAX
JZ 0x0010499f
MOV RDX,qword ptr [RSP + 0x20]
MOV ESI,0x8
MOV EDI,0x0
CALL 0x0010ca58
MOV RBP,RAX
CALL 0x00103090
MOV RCX,RBP
LEA RDX,[0x1207c7]
MOV ESI,dword ptr [RAX]
MOV EDI,0x0
MOV EAX,0x0
CALL 0x001034f0
LEA RSI,[0x11ee4b]
MOV EDI,EBX
CALL 0x00103490
MOV qword ptr [RSP + 0x38],RAX
TEST RAX,RAX
JZ 0x00104b19
MOV qword ptr [RSP + 0x60],0x0
MOV qword ptr [RSP + 0x58],0x0
MOV EBX,dword ptr [0x001261b0]
MOV EAX,dword ptr [RSP + 0x10]
SUB EAX,EBX
MOV dword ptr [RSP + 0x30],EAX
MOV EAX,dword ptr [0x00126200]
MOV dword ptr [RSP + 0x44],EAX
MOV dword ptr [RSP + 0x188],0x0
MOV dword ptr [RSP + 0x154],0x0
MOV dword ptr [RSP + 0x158],0x0
MOV RAX,qword ptr [RSP + 0x20]
MOV qword ptr [RSP + 0x180],RAX
MOV RAX,qword ptr [RSP + 0x38]
MOV qword ptr [RSP + 0x178],RAX
MOV qword ptr [0x00126220],0x0
MOV qword ptr [0x00126218],0x0
MOV qword ptr [0x00126210],0x0
MOV byte ptr [0x00126288],0x0
MOV qword ptr [RSP + 0x168],0x80
MOV EDI,0x80
CALL 0x0010d559
MOV qword ptr [RSP + 0x160],RAX
MOV RCX,qword ptr [RSP + 0x178]
MOV EDX,0x2
MOV ESI,0x1
MOV RDI,RAX
CALL 0x001030f0
MOV R12,RAX
MOVSXD RBP,EAX
CMP RBP,0x2
JA 0x00104b55
CMP RBP,0x1
JBE 0x00105aa4
MOV R13,qword ptr [RSP + 0x160]
CMP byte ptr [R13 + 0x1],0x0
JNZ 0x00105aa4
CALL 0x00103640
MOVZX EDX,byte ptr [R13]
MOVZX ECX,DL
MOV RAX,qword ptr [RAX]
TEST byte ptr [RAX + RCX*0x2 + 0x1],0x8
JZ 0x00105aa4
MOVSX EBP,DL
SUB EBP,0x30
CMP EBP,0x1
JG 0x00104b74
JNZ 0x0010540d
CMP dword ptr [0x00126200],0x2
JZ 0x00104c1b
CMP dword ptr [RSP + 0x44],0x1
JZ 0x0010540d
MOV dword ptr [RSP + 0x44],0x1
MOV EAX,dword ptr [RSP + 0x68]
OR EAX,dword ptr [RSP + 0x2c]
JNZ 0x00104c52
MOV ESI,0x0
LEA RDI,[0x103e3d]
CALL 0x001039a8
MOV EAX,dword ptr [RSP + 0x50]
MOV dword ptr [RSP + 0x70],EAX
LEA RAX,[0x11e92a]
MOV qword ptr [RSP + 0x78],RAX
MOV dword ptr [RSP + 0x6c],0x1
CMP dword ptr [RSP + 0x54],0x0
JNZ 0x00104daa
CMP dword ptr [RSP + 0x30],0x0
JLE 0x00104f3c
MOVSXD RBX,EBX
MOV RDX,qword ptr [RSP + 0x8]
LEA R12,[RDX + RBX*0x8]
MOV EAX,dword ptr [RSP + 0x30]
LEA EAX,[RAX + -0x1]
ADD RBX,RAX
LEA R14,[RDX + RBX*0x8 + 0x8]
JMP 0x00104e89
MOV RBX,qword ptr [RSP + 0x180]
MOV EDX,0x5
LEA RSI,[0x11e570]
MOV EDI,0x0
CALL 0x00103170
MOV RCX,qword ptr [RSP + 0x78]
MOV RDX,RBX
MOV RSI,RAX
MOV EDI,0x1
MOV EAX,0x0
CALL 0x001034b0
JMP 0x001050c5
MOV RSI,qword ptr [RSP + 0x178]
MOV EDI,EAX
CALL 0x00103440
MOV dword ptr [RSP + 0x150],0x0
JMP 0x001050e9
MOV EBX,0x1
MOV EDX,0x5
LEA RSI,[0x11e598]
MOV EDI,0x0
CALL 0x00103170
MOV RBP,RAX
MOV EDX,0x5
LEA RSI,[0x11e5d0]
MOV EDI,0x0
CALL 0x00103170
MOV ECX,dword ptr [RSP + 0x188]
CMP ECX,0x1
JZ 0x00105536
CMP ECX,0x2
JNZ 0x0010555b
CMP EBX,0x1
CMOVNZ RAX,RBP
MOV RDX,RAX
LEA RSI,[0x1207c7]
MOV EDI,0x1
MOV EAX,0x0
CALL 0x001034b0
JMP 0x0010511b
CMP EBX,0x1
CMOVNZ RBP,RAX
MOV RDX,RBP
LEA RSI,[0x1207c7]
MOV EDI,0x1
MOV EAX,0x0
CALL 0x001034b0
JMP 0x0010511b
MOV EDX,0x5
LEA RSI,[0x11e608]
MOV EDI,0x0
CALL 0x00103170
MOV RSI,RAX
MOV EDI,0x1
MOV EAX,0x0
CALL 0x001034b0
JMP 0x0010511b
MOV R14,qword ptr [RSP + 0x60]
MOV RAX,qword ptr [RSP + 0x58]
TEST RAX,RAX
JZ 0x0010566f
MOV RDI,RAX
CALL 0x00103070
MOV R12,RAX
TEST RAX,RAX
JZ 0x0010566f
LEA RDI,[RSP + 0xa40]
MOV RCX,RAX
LEA RDX,[0x11e9c6]
MOV ESI,0x14
CALL 0x001034c0
CMP RAX,0x13
JNZ 0x00105899
CMP byte ptr [RSP + 0xa53],0x0
JNZ 0x001058b8
CMP byte ptr [RSP + 0xa52],0x0
JZ 0x001058d7
MOV RAX,qword ptr [RSP + 0x58]
MOV RBP,qword ptr [RAX + 0x8]
MOV EDX,0x5
LEA RSI,[0x11e648]
MOV EDI,0x0
CALL 0x00103170
LEA RBX,[RSP + 0xa40]
MOV RCX,RBP
MOV RDX,RBX
MOV RSI,RAX
MOV EDI,0x1
MOV EAX,0x0
CALL 0x001034b0
MOV RCX,R12
LEA RDX,[0x11ea2c]
MOV ESI,0x14
MOV RDI,RBX
CALL 0x001034c0
CMP RAX,0x5
JNZ 0x001058f6
LEA RDX,[RSP + 0xa40]
LEA RSI,[0x11f9af]
MOV EDI,0x1
MOV EAX,0x0
CALL 0x001034b0
LEA RBX,[RSP + 0x290]
MOV R8D,0x1
MOV ECX,0x1
MOV EDX,0x0
MOV RSI,RBX
MOV RDI,R14
CALL 0x0010670e
MOV RBP,RAX
MOV R8D,0x5
MOV RCX,R14
LEA RDX,[0x11e670]
LEA RSI,[0x11e690]
MOV EDI,0x0
CALL 0x00103530
MOV RDX,RBP
MOV RSI,RAX
MOV EDI,0x1
MOV EAX,0x0
CALL 0x001034b0
MOV R8D,0x1
MOV ECX,0x1
MOV EDX,0x0
MOV RSI,RBX
MOV RDI,qword ptr [0x00126248]
CALL 0x0010670e
MOV RBX,RAX
CMP byte ptr [0x00126288],0x0
JZ 0x00105915
MOV EDX,0x5
LEA RSI,[0x11ea3c]
MOV EDI,0x0
CALL 0x00103170
MOV RDX,RBX
MOV RSI,RAX
MOV EDI,0x1
MOV EAX,0x0
CALL 0x001034b0
LEA RSI,[RSP + 0xa40]
MOV R8D,0x1
MOV ECX,0x1
MOV EDX,0x0
MOV RDI,qword ptr [0x00126268]
CALL 0x0010670e
MOV R13,RAX
LEA RSI,[RSP + 0x7b0]
MOV R8D,0x1
MOV ECX,0x1
MOV EDX,0x0
MOV RDI,qword ptr [0x00126260]
CALL 0x0010670e
MOV R12,RAX
LEA RSI,[RSP + 0x520]
MOV R8D,0x1
MOV ECX,0x1
MOV EDX,0x0
MOV RDI,qword ptr [0x00126258]
CALL 0x0010670e
MOV RBP,RAX
LEA RSI,[RSP + 0x290]
MOV R8D,0x1
MOV ECX,0x1
MOV EDX,0x0
MOV RDI,qword ptr [0x00126250]
CALL 0x0010670e
MOV RBX,RAX
MOV EDX,0x5
LEA RSI,[0x11e6b0]
MOV EDI,0x0
CALL 0x00103170
MOV R9,R13
MOV R8,R12
MOV RCX,RBP
MOV RDX,RBX
MOV RSI,RAX
MOV EDI,0x1
MOV EAX,0x0
CALL 0x001034b0
CMP dword ptr [RSP + 0x30],0x0
JNZ 0x0010588a
CMP byte ptr [0x00126288],0x0
JNZ 0x00105930
MOV RAX,qword ptr [0x00126250]
TEST RAX,RAX
JZ 0x001059a0
JS 0x0010595d
PXOR XMM4,XMM4
CVTSI2SD XMM4,RAX
MOVSD qword ptr [RSP + 0x30],XMM4
MOV EDX,0x5
LEA RSI,[0x11e7c0]
MOV EDI,0x0
CALL 0x00103170
TEST R14,R14
JS 0x00105981
PXOR XMM0,XMM0
CVTSI2SD XMM0,R14
MOVSD XMM2,qword ptr [RSP + 0x30]
MOVAPD XMM3,XMM2
SUBSD XMM3,XMM0
MOVAPD XMM0,XMM3
MULSD XMM0,qword ptr [0x0011eda0]
DIVSD XMM0,XMM2
MOV RSI,RAX
MOV EDI,0x1
MOV EAX,0x1
CALL 0x001034b0
MOV EDI,0xa
CALL 0x00103060
JMP 0x0010512b
LEA RCX,[0x11ec98]
MOV EDX,0x34b
LEA RSI,[0x11e899]
LEA RDI,[0x11e9d8]
CALL 0x00103230
LEA RCX,[0x11ec98]
MOV EDX,0x34c
LEA RSI,[0x11e899]
LEA RDI,[0x11e9f2]
CALL 0x00103230
LEA RCX,[0x11ec98]
MOV EDX,0x34d
LEA RSI,[0x11e899]
LEA RDI,[0x11ea0f]
CALL 0x00103230
LEA RCX,[0x11ec98]
MOV EDX,0x351
LEA RSI,[0x11e899]
LEA RDI,[0x11ea2f]
CALL 0x00103230
MOV EDX,0x5
LEA RSI,[0x11ea54]
MOV EDI,0x0
CALL 0x00103170
JMP 0x00105710
MOV EDX,0x5
LEA RSI,[0x11e768]
MOV EDI,0x0
CALL 0x00103170
MOV RSI,RAX
MOV EDI,0x1
MOV EAX,0x0
CALL 0x001034b0
JMP 0x0010588a
MOV RDX,RAX
SHR RDX,0x1
AND EAX,0x1
OR RDX,RAX
PXOR XMM0,XMM0
CVTSI2SD XMM0,RDX
ADDSD XMM0,XMM0
MOVSD qword ptr [RSP + 0x30],XMM0
JMP 0x00105832
MOV RDX,R14
SHR RDX,0x1
AND R14D,0x1
OR RDX,R14
PXOR XMM0,XMM0
CVTSI2SD XMM0,RDX
ADDSD XMM0,XMM0
JMP 0x0010585a
MOV EDX,0x5
LEA RSI,[0x11e7f0]
MOV EDI,0x0
CALL 0x00103170
MOV RSI,RAX
MOV EDI,0x1
MOV EAX,0x0
CALL 0x001034b0
JMP 0x0010588a
MOV RDX,qword ptr [RSP + 0x180]
MOV ESI,0x8
MOV EDI,0x0
CALL 0x0010ca58
MOV RBX,RAX
CALL 0x00103090
MOV RCX,RBX
LEA RDX,[0x1207c7]
MOV ESI,dword ptr [RAX]
MOV EDI,0x0
MOV EAX,0x0
CALL 0x001034f0
MOV EBX,0x0
JMP 0x0010514b
MOV RDX,qword ptr [RSP + 0x20]
MOV ESI,0x8
MOV EDI,0x0
CALL 0x0010ca58
MOV RBX,RAX
CALL 0x00103090
MOV RCX,RBX
LEA RDX,[0x1207c7]
MOV ESI,dword ptr [RAX]
MOV EDI,0x0
MOV EAX,0x0
CALL 0x001034f0
JMP 0x0010468d
CMP dword ptr [RSP + 0x84],0x0
JNZ 0x00105a89
TEST RBX,RBX
JNZ 0x0010468d
CMP dword ptr [RSP + 0x40],0x0
JZ 0x00105a75
CMP qword ptr [0x00126270],0x0
JZ 0x0010468d
CMP dword ptr [RSP + 0x2c],0x0
SETZ AL
MOVZX EAX,AL
MOV dword ptr [RSP + 0x50],EAX
JMP 0x0010468d
MOV RDX,RBX
LEA RSI,[0x11ea67]
MOV EDI,0x1
MOV EAX,0x0
CALL 0x001034b0
JMP 0x00105a57
LEA RDI,[RSP + 0x150]
MOV EDX,0x0
MOV ESI,0xa
CALL 0x001040e7
MOV EDX,0xa
SUB RDX,RBP
MOV RDI,RBP
ADD RDI,qword ptr [RSP + 0x160]
MOV RCX,qword ptr [RSP + 0x178]
MOV ESI,0x1
CALL 0x001030f0
ADD R12D,EAX
MOVSXD RBP,R12D
CMP RBP,0x9
JBE 0x00104ca9
MOV EDX,0xa
LEA RSI,[0x11eb40]
MOV RDI,qword ptr [RSP + 0x160]
CALL 0x001032f0
MOV R13D,EAX
MOV dword ptr [RSP + 0x70],EAX
TEST EAX,EAX
JNZ 0x00104ca9
MOV ESI,0x0
LEA RDI,[0x103e3d]
CALL 0x001039a8
MOV dword ptr [RSP + 0x6c],R13D
LEA RAX,[0x11e932]
MOV qword ptr [RSP + 0x78],RAX
JMP 0x0010543a
MOV EAX,dword ptr [RSP + 0x10]
CMP dword ptr [0x001261b0],EAX
JZ 0x0010483d
MOV dword ptr [RSP + 0x68],0x1
JMP 0x001047c0
CALL 0x001031a0
(translation_unit "/* WARNING: Removing unreachable block (ram,0x00105539) */\n/* WARNING: Removing unreachable block (ram,0x00105514) */\n/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */\n\nulong FUN_001042fa(uint param_1,long *param_2,undefined8 param_3)\n\n{\n  char *pcVar1;\n  char cVar2;\n  int iVar3;\n  uint uVar4;\n  int iVar5;\n  ulong uVar6;\n  time_t tVar7;\n  byte *pbVar8;\n  undefined8 *puVar9;\n  long lVar10;\n  char *pcVar11;\n  undefined8 uVar12;\n  int *piVar13;\n  size_t sVar14;\n  ushort **ppuVar15;\n  tm *__tp;\n  undefined8 uVar16;\n  undefined8 uVar17;\n  undefined8 uVar18;\n  undefined8 uVar19;\n  size_t sVar20;\n  byte *pbVar21;\n  undefined *puVar22;\n  int iVar23;\n  undefined4 *unaff_RBP;\n  ulong uVar24;\n  code *pcVar25;\n  int unaff_R12D;\n  long *plVar26;\n  int unaff_R15D;\n  long in_FS_OFFSET;\n  byte bVar27;\n  double dVar28;\n  int local_d04;\n  char *local_d00;\n  char *local_cf8;\n  uint local_cf0;\n  int local_cec;\n  double local_ce8;\n  FILE *local_ce0;\n  uint local_cd8;\n  int local_cd4;\n  char *local_cd0;\n  uint local_cc8;\n  int local_cc4;\n  time_t *local_cc0;\n  ulong local_cb8;\n  int local_cb0;\n  uint local_cac;\n  uint local_ca8;\n  uint local_ca4;\n  char *local_ca0;\n  int local_c98;\n  int local_c94;\n  uint local_c90;\n  char local_c89;\n  long local_c80;\n  size_t local_c78;\n  undefined4 local_c70;\n  undefined4 uStack_c6c;\n  time_t local_c68;\n  long local_c60;\n  stat local_c58;\n  int local_bc8 [4];\n  byte *local_bb8;\n  undefined8 local_bb0;\n  FILE *local_ba0;\n  char *local_b98;\n  int local_b90;\n  byte local_b8c [128];\n  byte local_b0c [132];\n  undefined1 local_a88 [656];\n  undefined1 local_7f8 [656];\n  undefined1 local_568 [656];\n  char local_2d8 [18];\n  char local_2c6;\n  char local_2c5;\n  long local_40;\n  \n  bVar27 = 0;\n  local_ca4 = (uint)param_3;\n  local_40 = *(long *)(in_FS_OFFSET + 0x28);\n  if (*param_2 == 0) {\n    FUN_0010b3a9("locate",param_2,param_3,0);\n  }\n  else {\n    FUN_0010b3a9();\n  }\n  setlocale(6,"");\n  bindtextdomain("findutils","/usr/share/locale");\n  textdomain("findutils");\n  DAT_00126290 = FUN_0010c71d(0);\n  iVar3 = FUN_0011d670(FUN_001064e7);\n  if ((iVar3 == 0) && (local_cc8 = FUN_0011d670(FUN_001038f1), local_cc8 == 0)) {\n    DAT_00126270 = 0;\n    DAT_00126278 = 0;\n    DAT_00126289 = '\x01';\n    local_d00 = getenv("LOCATE_PATH");\n    DAT_00126200 = 0;\n    unaff_RBP = &local_c70;\n    puVar22 = &DAT_0011eb4c;\n    unaff_R12D = 1;\n    local_d04 = 0;\n    local_cf0 = 0;\n    local_cec = 0;\n    local_cb0 = 0;\n    local_c98 = 0;\n    local_c94 = 0;\n    unaff_R15D = 0;\n    local_cd8 = local_cc8;\n    local_cc4 = 0;\n  }\n  else {\n    puVar22 = (undefined *)dcgettext(0,"The atexit library function failed",5);\n    piVar13 = __errno_location();\n    error(1,*piVar13,puVar22);\n    local_c98 = unaff_R12D;\n  }\n  while( true ) {\n    local_c70 = 0xffffffff;\n    iVar3 = getopt_long(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP);\n    if (iVar3 == -1) break;\n    if (iVar3 - 0x30U < 0x52) {\n                    /* WARNING: Could not recover jumptable at 0x00104479. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))();\n      return uVar6;\n    }\n    FUN_00103906(1);\n    local_cc4 = unaff_R12D;\n  }\n  if ((-1 < (int)local_ca4) && (local_d00 != (char *)0x0)) {\n    close(local_ca4);\n    local_ca4 = 0xffffffff;\n  }\n  if (local_c94 == 0 && local_cec == 0) {\n    if (optind == param_1) {\n      uVar12 = dcgettext(0,"pattern argument expected",5);\n      sVar14 = 0;\n      error(0,0,uVar12);\n      FUN_00103906(1);\n      goto LAB_00104874;\n    }\n    local_cb0 = 1;\n  }\n  else if ((local_cec != 0) && (optind == param_1)) {\n    local_cd8 = local_cc8;\n  }\n  iVar3 = isatty(1);\n  DAT_0012628a = iVar3 == 1;\n  if (local_d00 != (char *)0x0) {\n    FUN_001063f9(local_d00,":",1,&local_c80,&local_c78);\n  }\n  uVar4 = local_cf0 | 0x400000;\n  if (unaff_R15D == 0) {\n    uVar4 = local_cf0;\n  }\n  local_c89 = '\0';\n  uVar6 = 0;\n  local_c90 = 0xffffffff;\n  local_cf0 = uVar4;\n  while ((uVar4 = local_ca4, local_cd8 == 0 || (DAT_00126278 < DAT_00126270))) {\n    DAT_00126268 = 0;\n    DAT_00126260 = 0;\n    DAT_00126258 = 0;\n    DAT_00126250 = 0;\n    DAT_00126248 = 0;\n    _DAT_00126240 = 0;\n    if (local_d00 == (char *)0x0) {\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = DAT_00126280;\n      local_cd0 = local_d00;\n      local_ca4 = local_c90;\n    }\n    else {\n      sVar14 = local_c78;\n      if (local_c78 == 1) {\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar4 = FUN_001038af(local_cf8);\n      if ((int)uVar4 < 0) {\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n    }\nLAB_00105254:\n    iVar3 = __fxstat(1,uVar4,&local_c58);\n    if (iVar3 == 0) {\n      local_cb8 = local_c58.st_size;\n      local_c68 = local_c58.st_mtim.tv_sec;\n      local_c60 = local_c58.st_mtim.tv_nsec;\n      tVar7 = time((time_t *)&local_c70);\n      if (tVar7 == -1) {\n        uVar12 = dcgettext(0,"time system call failed",5);\n        piVar13 = __errno_location();\n        error(0,*piVar13,uVar12);\n      }\n      else {\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &local_c68;\n    }\n    else {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (time_t *)0x0;\n    }\n    iVar3 = DAT_00126200;\n    uVar4 = optind;\n    uVar6 = (ulong)optind;\n    iVar5 = param_1 - optind;\n    local_cd4 = DAT_00126200;\n    local_b90 = 0;\n    local_bc8[1] = 0;\n    local_bc8[2] = 0;\n    local_b98 = local_cf8;\n    local_ba0 = local_ce0;\n    DAT_00126220 = 0;\n    DAT_00126218 = 0;\n    DAT_00126210 = 0;\n    DAT_00126288 = '\0';\n    local_bb0 = 0x80;\n    local_bb8 = (byte *)FUN_0010d559(0x80);\n    sVar14 = fread(local_bb8,1,2,local_ba0);\n    pbVar8 = local_bb8;\n    uVar24 = (ulong)(int)sVar14;\n    if (2 < uVar24) {\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }\n    if ((uVar24 < 2) || (local_bb8[1] != 0)) {\nLAB_00105aa4:\n      FUN_001040e7(local_bc8,10,0);\n      sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0);\n      iVar3 = (int)sVar14 + (int)sVar20;\n      if (((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)) {\n        FUN_001040e7(local_bc8,0x100,0);\n        if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        uVar6 = FUN_0010ca58(0,8,local_cf8);\n        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar12,uVar6);\nLAB_00104daa:\n        uVar4 = (uint)uVar6;\n        FUN_001039a8(FUN_00103e25,0);\n      }\n      else {\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar5) {\n        plVar26 = param_2 + (int)uVar4;\n        do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);\n      }\n      lVar10 = DAT_00126218;\n      if (local_cd4 == 1) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }\n      }\n      else if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }\n      if (local_cec != 0) {\n        FUN_001039a8(FUN_00103a70,&DAT_00126240);\n      }\n      if (local_cb0 != 0) {\n        if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }\n      }\n      if (local_cd8 == 0) {\n        FUN_001039a8(FUN_001038a4,&DAT_00126270);\n      }\n      else {\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }\n      pcVar1 = local_b98;\n      if (iVar5 < 2) {\n        DAT_00126208 = FUN_00103755;\n      }\n      else {\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }\n      if (local_cec != 0) {\n        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar12,pcVar1,local_ca0);\n      }\n      local_bc8[0] = getc(local_ba0);\n      if ((local_bc8[0] != -1) && (local_cac != 0)) {\n        ungetc(local_bc8[0],local_ba0);\n        local_bc8[0] = 0;\n      }\n      do {\n        if (local_bc8[0] == -1) break;\n        iVar3 = (*DAT_00126208)(local_bc8);\n      } while (iVar3 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }\n        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar3 = ferror(local_ba0);\n      uVar6 = DAT_00126278;\n      if (iVar3 != 0) {\n        uVar12 = FUN_0010ca58(0,8,local_b98);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        uVar6 = 0;\n      }\n    }\n    else {\n      ppuVar15 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar23 = (char)*pbVar8 + -0x30;\n      if (iVar23 < 2) {\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar16,uVar12,0);\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar16,uVar12,iVar23);\n      uVar6 = 0;\n    }\nLAB_0010514b:\n    iVar3 = fclose(local_ce0);\n    if (iVar3 == -1) {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      goto LAB_0010468d;\n    }\n    if (local_cd0 != (char *)0x0) {\n      free(local_cd0);\n    }\n    if ((local_d00 == (char *)0x0) ||\n       (cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0')) break;\n  }\n  if (local_c94 != 0) {\n    __printf_chk(1,&DAT_0011ea67,uVar6);\n  }\n  if ((uVar6 == 0) && ((local_cd8 == 0 || (DAT_00126270 != 0)))) {\n    local_cc8 = (uint)(local_cec == 0);\n  }\nLAB_0010468d:\n  if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n    __stack_chk_fail();\n  }\n  return (ulong)local_cc8;\n}\n\n" comment comment comment (function_definition "ulong FUN_001042fa(uint param_1,long *param_2,undefined8 param_3)\n\n{\n  char *pcVar1;\n  char cVar2;\n  int iVar3;\n  uint uVar4;\n  int iVar5;\n  ulong uVar6;\n  time_t tVar7;\n  byte *pbVar8;\n  undefined8 *puVar9;\n  long lVar10;\n  char *pcVar11;\n  undefined8 uVar12;\n  int *piVar13;\n  size_t sVar14;\n  ushort **ppuVar15;\n  tm *__tp;\n  undefined8 uVar16;\n  undefined8 uVar17;\n  undefined8 uVar18;\n  undefined8 uVar19;\n  size_t sVar20;\n  byte *pbVar21;\n  undefined *puVar22;\n  int iVar23;\n  undefined4 *unaff_RBP;\n  ulong uVar24;\n  code *pcVar25;\n  int unaff_R12D;\n  long *plVar26;\n  int unaff_R15D;\n  long in_FS_OFFSET;\n  byte bVar27;\n  double dVar28;\n  int local_d04;\n  char *local_d00;\n  char *local_cf8;\n  uint local_cf0;\n  int local_cec;\n  double local_ce8;\n  FILE *local_ce0;\n  uint local_cd8;\n  int local_cd4;\n  char *local_cd0;\n  uint local_cc8;\n  int local_cc4;\n  time_t *local_cc0;\n  ulong local_cb8;\n  int local_cb0;\n  uint local_cac;\n  uint local_ca8;\n  uint local_ca4;\n  char *local_ca0;\n  int local_c98;\n  int local_c94;\n  uint local_c90;\n  char local_c89;\n  long local_c80;\n  size_t local_c78;\n  undefined4 local_c70;\n  undefined4 uStack_c6c;\n  time_t local_c68;\n  long local_c60;\n  stat local_c58;\n  int local_bc8 [4];\n  byte *local_bb8;\n  undefined8 local_bb0;\n  FILE *local_ba0;\n  char *local_b98;\n  int local_b90;\n  byte local_b8c [128];\n  byte local_b0c [132];\n  undefined1 local_a88 [656];\n  undefined1 local_7f8 [656];\n  undefined1 local_568 [656];\n  char local_2d8 [18];\n  char local_2c6;\n  char local_2c5;\n  long local_40;\n  \n  bVar27 = 0;\n  local_ca4 = (uint)param_3;\n  local_40 = *(long *)(in_FS_OFFSET + 0x28);\n  if (*param_2 == 0) {\n    FUN_0010b3a9("locate",param_2,param_3,0);\n  }\n  else {\n    FUN_0010b3a9();\n  }\n  setlocale(6,"");\n  bindtextdomain("findutils","/usr/share/locale");\n  textdomain("findutils");\n  DAT_00126290 = FUN_0010c71d(0);\n  iVar3 = FUN_0011d670(FUN_001064e7);\n  if ((iVar3 == 0) && (local_cc8 = FUN_0011d670(FUN_001038f1), local_cc8 == 0)) {\n    DAT_00126270 = 0;\n    DAT_00126278 = 0;\n    DAT_00126289 = '\x01';\n    local_d00 = getenv("LOCATE_PATH");\n    DAT_00126200 = 0;\n    unaff_RBP = &local_c70;\n    puVar22 = &DAT_0011eb4c;\n    unaff_R12D = 1;\n    local_d04 = 0;\n    local_cf0 = 0;\n    local_cec = 0;\n    local_cb0 = 0;\n    local_c98 = 0;\n    local_c94 = 0;\n    unaff_R15D = 0;\n    local_cd8 = local_cc8;\n    local_cc4 = 0;\n  }\n  else {\n    puVar22 = (undefined *)dcgettext(0,"The atexit library function failed",5);\n    piVar13 = __errno_location();\n    error(1,*piVar13,puVar22);\n    local_c98 = unaff_R12D;\n  }\n  while( true ) {\n    local_c70 = 0xffffffff;\n    iVar3 = getopt_long(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP);\n    if (iVar3 == -1) break;\n    if (iVar3 - 0x30U < 0x52) {\n                    /* WARNING: Could not recover jumptable at 0x00104479. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))();\n      return uVar6;\n    }\n    FUN_00103906(1);\n    local_cc4 = unaff_R12D;\n  }\n  if ((-1 < (int)local_ca4) && (local_d00 != (char *)0x0)) {\n    close(local_ca4);\n    local_ca4 = 0xffffffff;\n  }\n  if (local_c94 == 0 && local_cec == 0) {\n    if (optind == param_1) {\n      uVar12 = dcgettext(0,"pattern argument expected",5);\n      sVar14 = 0;\n      error(0,0,uVar12);\n      FUN_00103906(1);\n      goto LAB_00104874;\n    }\n    local_cb0 = 1;\n  }\n  else if ((local_cec != 0) && (optind == param_1)) {\n    local_cd8 = local_cc8;\n  }\n  iVar3 = isatty(1);\n  DAT_0012628a = iVar3 == 1;\n  if (local_d00 != (char *)0x0) {\n    FUN_001063f9(local_d00,":",1,&local_c80,&local_c78);\n  }\n  uVar4 = local_cf0 | 0x400000;\n  if (unaff_R15D == 0) {\n    uVar4 = local_cf0;\n  }\n  local_c89 = '\0';\n  uVar6 = 0;\n  local_c90 = 0xffffffff;\n  local_cf0 = uVar4;\n  while ((uVar4 = local_ca4, local_cd8 == 0 || (DAT_00126278 < DAT_00126270))) {\n    DAT_00126268 = 0;\n    DAT_00126260 = 0;\n    DAT_00126258 = 0;\n    DAT_00126250 = 0;\n    DAT_00126248 = 0;\n    _DAT_00126240 = 0;\n    if (local_d00 == (char *)0x0) {\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = DAT_00126280;\n      local_cd0 = local_d00;\n      local_ca4 = local_c90;\n    }\n    else {\n      sVar14 = local_c78;\n      if (local_c78 == 1) {\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar4 = FUN_001038af(local_cf8);\n      if ((int)uVar4 < 0) {\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n    }\nLAB_00105254:\n    iVar3 = __fxstat(1,uVar4,&local_c58);\n    if (iVar3 == 0) {\n      local_cb8 = local_c58.st_size;\n      local_c68 = local_c58.st_mtim.tv_sec;\n      local_c60 = local_c58.st_mtim.tv_nsec;\n      tVar7 = time((time_t *)&local_c70);\n      if (tVar7 == -1) {\n        uVar12 = dcgettext(0,"time system call failed",5);\n        piVar13 = __errno_location();\n        error(0,*piVar13,uVar12);\n      }\n      else {\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &local_c68;\n    }\n    else {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (time_t *)0x0;\n    }\n    iVar3 = DAT_00126200;\n    uVar4 = optind;\n    uVar6 = (ulong)optind;\n    iVar5 = param_1 - optind;\n    local_cd4 = DAT_00126200;\n    local_b90 = 0;\n    local_bc8[1] = 0;\n    local_bc8[2] = 0;\n    local_b98 = local_cf8;\n    local_ba0 = local_ce0;\n    DAT_00126220 = 0;\n    DAT_00126218 = 0;\n    DAT_00126210 = 0;\n    DAT_00126288 = '\0';\n    local_bb0 = 0x80;\n    local_bb8 = (byte *)FUN_0010d559(0x80);\n    sVar14 = fread(local_bb8,1,2,local_ba0);\n    pbVar8 = local_bb8;\n    uVar24 = (ulong)(int)sVar14;\n    if (2 < uVar24) {\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }\n    if ((uVar24 < 2) || (local_bb8[1] != 0)) {\nLAB_00105aa4:\n      FUN_001040e7(local_bc8,10,0);\n      sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0);\n      iVar3 = (int)sVar14 + (int)sVar20;\n      if (((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)) {\n        FUN_001040e7(local_bc8,0x100,0);\n        if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        uVar6 = FUN_0010ca58(0,8,local_cf8);\n        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar12,uVar6);\nLAB_00104daa:\n        uVar4 = (uint)uVar6;\n        FUN_001039a8(FUN_00103e25,0);\n      }\n      else {\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar5) {\n        plVar26 = param_2 + (int)uVar4;\n        do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);\n      }\n      lVar10 = DAT_00126218;\n      if (local_cd4 == 1) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }\n      }\n      else if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }\n      if (local_cec != 0) {\n        FUN_001039a8(FUN_00103a70,&DAT_00126240);\n      }\n      if (local_cb0 != 0) {\n        if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }\n      }\n      if (local_cd8 == 0) {\n        FUN_001039a8(FUN_001038a4,&DAT_00126270);\n      }\n      else {\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }\n      pcVar1 = local_b98;\n      if (iVar5 < 2) {\n        DAT_00126208 = FUN_00103755;\n      }\n      else {\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }\n      if (local_cec != 0) {\n        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar12,pcVar1,local_ca0);\n      }\n      local_bc8[0] = getc(local_ba0);\n      if ((local_bc8[0] != -1) && (local_cac != 0)) {\n        ungetc(local_bc8[0],local_ba0);\n        local_bc8[0] = 0;\n      }\n      do {\n        if (local_bc8[0] == -1) break;\n        iVar3 = (*DAT_00126208)(local_bc8);\n      } while (iVar3 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }\n        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar3 = ferror(local_ba0);\n      uVar6 = DAT_00126278;\n      if (iVar3 != 0) {\n        uVar12 = FUN_0010ca58(0,8,local_b98);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        uVar6 = 0;\n      }\n    }\n    else {\n      ppuVar15 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar23 = (char)*pbVar8 + -0x30;\n      if (iVar23 < 2) {\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar16,uVar12,0);\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar16,uVar12,iVar23);\n      uVar6 = 0;\n    }\nLAB_0010514b:\n    iVar3 = fclose(local_ce0);\n    if (iVar3 == -1) {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      goto LAB_0010468d;\n    }\n    if (local_cd0 != (char *)0x0) {\n      free(local_cd0);\n    }\n    if ((local_d00 == (char *)0x0) ||\n       (cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0')) break;\n  }\n  if (local_c94 != 0) {\n    __printf_chk(1,&DAT_0011ea67,uVar6);\n  }\n  if ((uVar6 == 0) && ((local_cd8 == 0 || (DAT_00126270 != 0)))) {\n    local_cc8 = (uint)(local_cec == 0);\n  }\nLAB_0010468d:\n  if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n    __stack_chk_fail();\n  }\n  return (ulong)local_cc8;\n}" type_identifier (function_declarator "FUN_001042fa(uint param_1,long *param_2,undefined8 param_3)" identifier (parameter_list "(uint param_1,long *param_2,undefined8 param_3)" ( (parameter_declaration "uint param_1" type_identifier identifier) , (parameter_declaration "long *param_2" (sized_type_specifier "long" long) (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "undefined8 param_3" type_identifier identifier) ))) (compound_statement "{\n  char *pcVar1;\n  char cVar2;\n  int iVar3;\n  uint uVar4;\n  int iVar5;\n  ulong uVar6;\n  time_t tVar7;\n  byte *pbVar8;\n  undefined8 *puVar9;\n  long lVar10;\n  char *pcVar11;\n  undefined8 uVar12;\n  int *piVar13;\n  size_t sVar14;\n  ushort **ppuVar15;\n  tm *__tp;\n  undefined8 uVar16;\n  undefined8 uVar17;\n  undefined8 uVar18;\n  undefined8 uVar19;\n  size_t sVar20;\n  byte *pbVar21;\n  undefined *puVar22;\n  int iVar23;\n  undefined4 *unaff_RBP;\n  ulong uVar24;\n  code *pcVar25;\n  int unaff_R12D;\n  long *plVar26;\n  int unaff_R15D;\n  long in_FS_OFFSET;\n  byte bVar27;\n  double dVar28;\n  int local_d04;\n  char *local_d00;\n  char *local_cf8;\n  uint local_cf0;\n  int local_cec;\n  double local_ce8;\n  FILE *local_ce0;\n  uint local_cd8;\n  int local_cd4;\n  char *local_cd0;\n  uint local_cc8;\n  int local_cc4;\n  time_t *local_cc0;\n  ulong local_cb8;\n  int local_cb0;\n  uint local_cac;\n  uint local_ca8;\n  uint local_ca4;\n  char *local_ca0;\n  int local_c98;\n  int local_c94;\n  uint local_c90;\n  char local_c89;\n  long local_c80;\n  size_t local_c78;\n  undefined4 local_c70;\n  undefined4 uStack_c6c;\n  time_t local_c68;\n  long local_c60;\n  stat local_c58;\n  int local_bc8 [4];\n  byte *local_bb8;\n  undefined8 local_bb0;\n  FILE *local_ba0;\n  char *local_b98;\n  int local_b90;\n  byte local_b8c [128];\n  byte local_b0c [132];\n  undefined1 local_a88 [656];\n  undefined1 local_7f8 [656];\n  undefined1 local_568 [656];\n  char local_2d8 [18];\n  char local_2c6;\n  char local_2c5;\n  long local_40;\n  \n  bVar27 = 0;\n  local_ca4 = (uint)param_3;\n  local_40 = *(long *)(in_FS_OFFSET + 0x28);\n  if (*param_2 == 0) {\n    FUN_0010b3a9("locate",param_2,param_3,0);\n  }\n  else {\n    FUN_0010b3a9();\n  }\n  setlocale(6,"");\n  bindtextdomain("findutils","/usr/share/locale");\n  textdomain("findutils");\n  DAT_00126290 = FUN_0010c71d(0);\n  iVar3 = FUN_0011d670(FUN_001064e7);\n  if ((iVar3 == 0) && (local_cc8 = FUN_0011d670(FUN_001038f1), local_cc8 == 0)) {\n    DAT_00126270 = 0;\n    DAT_00126278 = 0;\n    DAT_00126289 = '\x01';\n    local_d00 = getenv("LOCATE_PATH");\n    DAT_00126200 = 0;\n    unaff_RBP = &local_c70;\n    puVar22 = &DAT_0011eb4c;\n    unaff_R12D = 1;\n    local_d04 = 0;\n    local_cf0 = 0;\n    local_cec = 0;\n    local_cb0 = 0;\n    local_c98 = 0;\n    local_c94 = 0;\n    unaff_R15D = 0;\n    local_cd8 = local_cc8;\n    local_cc4 = 0;\n  }\n  else {\n    puVar22 = (undefined *)dcgettext(0,"The atexit library function failed",5);\n    piVar13 = __errno_location();\n    error(1,*piVar13,puVar22);\n    local_c98 = unaff_R12D;\n  }\n  while( true ) {\n    local_c70 = 0xffffffff;\n    iVar3 = getopt_long(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP);\n    if (iVar3 == -1) break;\n    if (iVar3 - 0x30U < 0x52) {\n                    /* WARNING: Could not recover jumptable at 0x00104479. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))();\n      return uVar6;\n    }\n    FUN_00103906(1);\n    local_cc4 = unaff_R12D;\n  }\n  if ((-1 < (int)local_ca4) && (local_d00 != (char *)0x0)) {\n    close(local_ca4);\n    local_ca4 = 0xffffffff;\n  }\n  if (local_c94 == 0 && local_cec == 0) {\n    if (optind == param_1) {\n      uVar12 = dcgettext(0,"pattern argument expected",5);\n      sVar14 = 0;\n      error(0,0,uVar12);\n      FUN_00103906(1);\n      goto LAB_00104874;\n    }\n    local_cb0 = 1;\n  }\n  else if ((local_cec != 0) && (optind == param_1)) {\n    local_cd8 = local_cc8;\n  }\n  iVar3 = isatty(1);\n  DAT_0012628a = iVar3 == 1;\n  if (local_d00 != (char *)0x0) {\n    FUN_001063f9(local_d00,":",1,&local_c80,&local_c78);\n  }\n  uVar4 = local_cf0 | 0x400000;\n  if (unaff_R15D == 0) {\n    uVar4 = local_cf0;\n  }\n  local_c89 = '\0';\n  uVar6 = 0;\n  local_c90 = 0xffffffff;\n  local_cf0 = uVar4;\n  while ((uVar4 = local_ca4, local_cd8 == 0 || (DAT_00126278 < DAT_00126270))) {\n    DAT_00126268 = 0;\n    DAT_00126260 = 0;\n    DAT_00126258 = 0;\n    DAT_00126250 = 0;\n    DAT_00126248 = 0;\n    _DAT_00126240 = 0;\n    if (local_d00 == (char *)0x0) {\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = DAT_00126280;\n      local_cd0 = local_d00;\n      local_ca4 = local_c90;\n    }\n    else {\n      sVar14 = local_c78;\n      if (local_c78 == 1) {\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar4 = FUN_001038af(local_cf8);\n      if ((int)uVar4 < 0) {\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n    }\nLAB_00105254:\n    iVar3 = __fxstat(1,uVar4,&local_c58);\n    if (iVar3 == 0) {\n      local_cb8 = local_c58.st_size;\n      local_c68 = local_c58.st_mtim.tv_sec;\n      local_c60 = local_c58.st_mtim.tv_nsec;\n      tVar7 = time((time_t *)&local_c70);\n      if (tVar7 == -1) {\n        uVar12 = dcgettext(0,"time system call failed",5);\n        piVar13 = __errno_location();\n        error(0,*piVar13,uVar12);\n      }\n      else {\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &local_c68;\n    }\n    else {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (time_t *)0x0;\n    }\n    iVar3 = DAT_00126200;\n    uVar4 = optind;\n    uVar6 = (ulong)optind;\n    iVar5 = param_1 - optind;\n    local_cd4 = DAT_00126200;\n    local_b90 = 0;\n    local_bc8[1] = 0;\n    local_bc8[2] = 0;\n    local_b98 = local_cf8;\n    local_ba0 = local_ce0;\n    DAT_00126220 = 0;\n    DAT_00126218 = 0;\n    DAT_00126210 = 0;\n    DAT_00126288 = '\0';\n    local_bb0 = 0x80;\n    local_bb8 = (byte *)FUN_0010d559(0x80);\n    sVar14 = fread(local_bb8,1,2,local_ba0);\n    pbVar8 = local_bb8;\n    uVar24 = (ulong)(int)sVar14;\n    if (2 < uVar24) {\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }\n    if ((uVar24 < 2) || (local_bb8[1] != 0)) {\nLAB_00105aa4:\n      FUN_001040e7(local_bc8,10,0);\n      sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0);\n      iVar3 = (int)sVar14 + (int)sVar20;\n      if (((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)) {\n        FUN_001040e7(local_bc8,0x100,0);\n        if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        uVar6 = FUN_0010ca58(0,8,local_cf8);\n        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar12,uVar6);\nLAB_00104daa:\n        uVar4 = (uint)uVar6;\n        FUN_001039a8(FUN_00103e25,0);\n      }\n      else {\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar5) {\n        plVar26 = param_2 + (int)uVar4;\n        do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);\n      }\n      lVar10 = DAT_00126218;\n      if (local_cd4 == 1) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }\n      }\n      else if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }\n      if (local_cec != 0) {\n        FUN_001039a8(FUN_00103a70,&DAT_00126240);\n      }\n      if (local_cb0 != 0) {\n        if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }\n      }\n      if (local_cd8 == 0) {\n        FUN_001039a8(FUN_001038a4,&DAT_00126270);\n      }\n      else {\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }\n      pcVar1 = local_b98;\n      if (iVar5 < 2) {\n        DAT_00126208 = FUN_00103755;\n      }\n      else {\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }\n      if (local_cec != 0) {\n        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar12,pcVar1,local_ca0);\n      }\n      local_bc8[0] = getc(local_ba0);\n      if ((local_bc8[0] != -1) && (local_cac != 0)) {\n        ungetc(local_bc8[0],local_ba0);\n        local_bc8[0] = 0;\n      }\n      do {\n        if (local_bc8[0] == -1) break;\n        iVar3 = (*DAT_00126208)(local_bc8);\n      } while (iVar3 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }\n        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar3 = ferror(local_ba0);\n      uVar6 = DAT_00126278;\n      if (iVar3 != 0) {\n        uVar12 = FUN_0010ca58(0,8,local_b98);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        uVar6 = 0;\n      }\n    }\n    else {\n      ppuVar15 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar23 = (char)*pbVar8 + -0x30;\n      if (iVar23 < 2) {\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar16,uVar12,0);\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar16,uVar12,iVar23);\n      uVar6 = 0;\n    }\nLAB_0010514b:\n    iVar3 = fclose(local_ce0);\n    if (iVar3 == -1) {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      goto LAB_0010468d;\n    }\n    if (local_cd0 != (char *)0x0) {\n      free(local_cd0);\n    }\n    if ((local_d00 == (char *)0x0) ||\n       (cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0')) break;\n  }\n  if (local_c94 != 0) {\n    __printf_chk(1,&DAT_0011ea67,uVar6);\n  }\n  if ((uVar6 == 0) && ((local_cd8 == 0 || (DAT_00126270 != 0)))) {\n    local_cc8 = (uint)(local_cec == 0);\n  }\nLAB_0010468d:\n  if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n    __stack_chk_fail();\n  }\n  return (ulong)local_cc8;\n}" { (declaration "char *pcVar1;" primitive_type (pointer_declarator "*pcVar1" * identifier) ;) (declaration "char cVar2;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "ulong uVar6;" type_identifier identifier ;) (declaration "time_t tVar7;" type_identifier identifier ;) (declaration "byte *pbVar8;" type_identifier (pointer_declarator "*pbVar8" * identifier) ;) (declaration "undefined8 *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (declaration "long lVar10;" (sized_type_specifier "long" long) identifier ;) (declaration "char *pcVar11;" primitive_type (pointer_declarator "*pcVar11" * identifier) ;) (declaration "undefined8 uVar12;" type_identifier identifier ;) (declaration "int *piVar13;" primitive_type (pointer_declarator "*piVar13" * identifier) ;) (declaration "size_t sVar14;" primitive_type identifier ;) (declaration "ushort **ppuVar15;" type_identifier (pointer_declarator "**ppuVar15" * (pointer_declarator "*ppuVar15" * identifier)) ;) (declaration "tm *__tp;" type_identifier (pointer_declarator "*__tp" * identifier) ;) (declaration "undefined8 uVar16;" type_identifier identifier ;) (declaration "undefined8 uVar17;" type_identifier identifier ;) (declaration "undefined8 uVar18;" type_identifier identifier ;) (declaration "undefined8 uVar19;" type_identifier identifier ;) (declaration "size_t sVar20;" primitive_type identifier ;) (declaration "byte *pbVar21;" type_identifier (pointer_declarator "*pbVar21" * identifier) ;) (declaration "undefined *puVar22;" type_identifier (pointer_declarator "*puVar22" * identifier) ;) (declaration "int iVar23;" primitive_type identifier ;) (declaration "undefined4 *unaff_RBP;" type_identifier (pointer_declarator "*unaff_RBP" * identifier) ;) (declaration "ulong uVar24;" type_identifier identifier ;) (declaration "code *pcVar25;" type_identifier (pointer_declarator "*pcVar25" * identifier) ;) (declaration "int unaff_R12D;" primitive_type identifier ;) (declaration "long *plVar26;" (sized_type_specifier "long" long) (pointer_declarator "*plVar26" * identifier) ;) (declaration "int unaff_R15D;" primitive_type identifier ;) (declaration "long in_FS_OFFSET;" (sized_type_specifier "long" long) identifier ;) (declaration "byte bVar27;" type_identifier identifier ;) (declaration "double dVar28;" primitive_type identifier ;) (declaration "int local_d04;" primitive_type identifier ;) (declaration "char *local_d00;" primitive_type (pointer_declarator "*local_d00" * identifier) ;) (declaration "char *local_cf8;" primitive_type (pointer_declarator "*local_cf8" * identifier) ;) (declaration "uint local_cf0;" type_identifier identifier ;) (declaration "int local_cec;" primitive_type identifier ;) (declaration "double local_ce8;" primitive_type identifier ;) (declaration "FILE *local_ce0;" type_identifier (pointer_declarator "*local_ce0" * identifier) ;) (declaration "uint local_cd8;" type_identifier identifier ;) (declaration "int local_cd4;" primitive_type identifier ;) (declaration "char *local_cd0;" primitive_type (pointer_declarator "*local_cd0" * identifier) ;) (declaration "uint local_cc8;" type_identifier identifier ;) (declaration "int local_cc4;" primitive_type identifier ;) (declaration "time_t *local_cc0;" type_identifier (pointer_declarator "*local_cc0" * identifier) ;) (declaration "ulong local_cb8;" type_identifier identifier ;) (declaration "int local_cb0;" primitive_type identifier ;) (declaration "uint local_cac;" type_identifier identifier ;) (declaration "uint local_ca8;" type_identifier identifier ;) (declaration "uint local_ca4;" type_identifier identifier ;) (declaration "char *local_ca0;" primitive_type (pointer_declarator "*local_ca0" * identifier) ;) (declaration "int local_c98;" primitive_type identifier ;) (declaration "int local_c94;" primitive_type identifier ;) (declaration "uint local_c90;" type_identifier identifier ;) (declaration "char local_c89;" primitive_type identifier ;) (declaration "long local_c80;" (sized_type_specifier "long" long) identifier ;) (declaration "size_t local_c78;" primitive_type identifier ;) (declaration "undefined4 local_c70;" type_identifier identifier ;) (declaration "undefined4 uStack_c6c;" type_identifier identifier ;) (declaration "time_t local_c68;" type_identifier identifier ;) (declaration "long local_c60;" (sized_type_specifier "long" long) identifier ;) (declaration "stat local_c58;" type_identifier identifier ;) (declaration "int local_bc8 [4];" primitive_type (array_declarator "local_bc8 [4]" identifier [ number_literal ]) ;) (declaration "byte *local_bb8;" type_identifier (pointer_declarator "*local_bb8" * identifier) ;) (declaration "undefined8 local_bb0;" type_identifier identifier ;) (declaration "FILE *local_ba0;" type_identifier (pointer_declarator "*local_ba0" * identifier) ;) (declaration "char *local_b98;" primitive_type (pointer_declarator "*local_b98" * identifier) ;) (declaration "int local_b90;" primitive_type identifier ;) (declaration "byte local_b8c [128];" type_identifier (array_declarator "local_b8c [128]" identifier [ number_literal ]) ;) (declaration "byte local_b0c [132];" type_identifier (array_declarator "local_b0c [132]" identifier [ number_literal ]) ;) (declaration "undefined1 local_a88 [656];" type_identifier (array_declarator "local_a88 [656]" identifier [ number_literal ]) ;) (declaration "undefined1 local_7f8 [656];" type_identifier (array_declarator "local_7f8 [656]" identifier [ number_literal ]) ;) (declaration "undefined1 local_568 [656];" type_identifier (array_declarator "local_568 [656]" identifier [ number_literal ]) ;) (declaration "char local_2d8 [18];" primitive_type (array_declarator "local_2d8 [18]" identifier [ number_literal ]) ;) (declaration "char local_2c6;" primitive_type identifier ;) (declaration "char local_2c5;" primitive_type identifier ;) (declaration "long local_40;" (sized_type_specifier "long" long) identifier ;) (expression_statement "bVar27 = 0;" (assignment_expression "bVar27 = 0" identifier = number_literal) ;) (expression_statement "local_ca4 = (uint)param_3;" (assignment_expression "local_ca4 = (uint)param_3" identifier = (cast_expression "(uint)param_3" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "local_40 = *(long *)(in_FS_OFFSET + 0x28);" (assignment_expression "local_40 = *(long *)(in_FS_OFFSET + 0x28)" identifier = (pointer_expression "*(long *)(in_FS_OFFSET + 0x28)" * (cast_expression "(long *)(in_FS_OFFSET + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_FS_OFFSET + 0x28)" ( (binary_expression "in_FS_OFFSET + 0x28" identifier + number_literal) ))))) ;) (if_statement "if (*param_2 == 0) {\n    FUN_0010b3a9("locate",param_2,param_3,0);\n  }\n  else {\n    FUN_0010b3a9();\n  }" if (parenthesized_expression "(*param_2 == 0)" ( (binary_expression "*param_2 == 0" (pointer_expression "*param_2" * identifier) == number_literal) )) (compound_statement "{\n    FUN_0010b3a9("locate",param_2,param_3,0);\n  }" { (expression_statement "FUN_0010b3a9("locate",param_2,param_3,0);" (call_expression "FUN_0010b3a9("locate",param_2,param_3,0)" identifier (argument_list "("locate",param_2,param_3,0)" ( (string_literal ""locate"" " string_content ") , identifier , identifier , number_literal ))) ;) }) (else_clause "else {\n    FUN_0010b3a9();\n  }" else (compound_statement "{\n    FUN_0010b3a9();\n  }" { (expression_statement "FUN_0010b3a9();" (call_expression "FUN_0010b3a9()" identifier (argument_list "()" ( ))) ;) }))) (expression_statement "setlocale(6,"");" (call_expression "setlocale(6,"")" identifier (argument_list "(6,"")" ( number_literal , (string_literal """" " ") ))) ;) (expression_statement "bindtextdomain("findutils","/usr/share/locale");" (call_expression "bindtextdomain("findutils","/usr/share/locale")" identifier (argument_list "("findutils","/usr/share/locale")" ( (string_literal ""findutils"" " string_content ") , (string_literal ""/usr/share/locale"" " string_content ") ))) ;) (expression_statement "textdomain("findutils");" (call_expression "textdomain("findutils")" identifier (argument_list "("findutils")" ( (string_literal ""findutils"" " string_content ") ))) ;) (expression_statement "DAT_00126290 = FUN_0010c71d(0);" (assignment_expression "DAT_00126290 = FUN_0010c71d(0)" identifier = (call_expression "FUN_0010c71d(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "iVar3 = FUN_0011d670(FUN_001064e7);" (assignment_expression "iVar3 = FUN_0011d670(FUN_001064e7)" identifier = (call_expression "FUN_0011d670(FUN_001064e7)" identifier (argument_list "(FUN_001064e7)" ( identifier )))) ;) (if_statement "if ((iVar3 == 0) && (local_cc8 = FUN_0011d670(FUN_001038f1), local_cc8 == 0)) {\n    DAT_00126270 = 0;\n    DAT_00126278 = 0;\n    DAT_00126289 = '\x01';\n    local_d00 = getenv("LOCATE_PATH");\n    DAT_00126200 = 0;\n    unaff_RBP = &local_c70;\n    puVar22 = &DAT_0011eb4c;\n    unaff_R12D = 1;\n    local_d04 = 0;\n    local_cf0 = 0;\n    local_cec = 0;\n    local_cb0 = 0;\n    local_c98 = 0;\n    local_c94 = 0;\n    unaff_R15D = 0;\n    local_cd8 = local_cc8;\n    local_cc4 = 0;\n  }\n  else {\n    puVar22 = (undefined *)dcgettext(0,"The atexit library function failed",5);\n    piVar13 = __errno_location();\n    error(1,*piVar13,puVar22);\n    local_c98 = unaff_R12D;\n  }" if (parenthesized_expression "((iVar3 == 0) && (local_cc8 = FUN_0011d670(FUN_001038f1), local_cc8 == 0))" ( (binary_expression "(iVar3 == 0) && (local_cc8 = FUN_0011d670(FUN_001038f1), local_cc8 == 0)" (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) && (parenthesized_expression "(local_cc8 = FUN_0011d670(FUN_001038f1), local_cc8 == 0)" ( (comma_expression "local_cc8 = FUN_0011d670(FUN_001038f1), local_cc8 == 0" (assignment_expression "local_cc8 = FUN_0011d670(FUN_001038f1)" identifier = (call_expression "FUN_0011d670(FUN_001038f1)" identifier (argument_list "(FUN_001038f1)" ( identifier )))) , (binary_expression "local_cc8 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n    DAT_00126270 = 0;\n    DAT_00126278 = 0;\n    DAT_00126289 = '\x01';\n    local_d00 = getenv("LOCATE_PATH");\n    DAT_00126200 = 0;\n    unaff_RBP = &local_c70;\n    puVar22 = &DAT_0011eb4c;\n    unaff_R12D = 1;\n    local_d04 = 0;\n    local_cf0 = 0;\n    local_cec = 0;\n    local_cb0 = 0;\n    local_c98 = 0;\n    local_c94 = 0;\n    unaff_R15D = 0;\n    local_cd8 = local_cc8;\n    local_cc4 = 0;\n  }" { (expression_statement "DAT_00126270 = 0;" (assignment_expression "DAT_00126270 = 0" identifier = number_literal) ;) (expression_statement "DAT_00126278 = 0;" (assignment_expression "DAT_00126278 = 0" identifier = number_literal) ;) (expression_statement "DAT_00126289 = '\x01';" (assignment_expression "DAT_00126289 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "local_d00 = getenv("LOCATE_PATH");" (assignment_expression "local_d00 = getenv("LOCATE_PATH")" identifier = (call_expression "getenv("LOCATE_PATH")" identifier (argument_list "("LOCATE_PATH")" ( (string_literal ""LOCATE_PATH"" " string_content ") )))) ;) (expression_statement "DAT_00126200 = 0;" (assignment_expression "DAT_00126200 = 0" identifier = number_literal) ;) (expression_statement "unaff_RBP = &local_c70;" (assignment_expression "unaff_RBP = &local_c70" identifier = (pointer_expression "&local_c70" & identifier)) ;) (expression_statement "puVar22 = &DAT_0011eb4c;" (assignment_expression "puVar22 = &DAT_0011eb4c" identifier = (pointer_expression "&DAT_0011eb4c" & identifier)) ;) (expression_statement "unaff_R12D = 1;" (assignment_expression "unaff_R12D = 1" identifier = number_literal) ;) (expression_statement "local_d04 = 0;" (assignment_expression "local_d04 = 0" identifier = number_literal) ;) (expression_statement "local_cf0 = 0;" (assignment_expression "local_cf0 = 0" identifier = number_literal) ;) (expression_statement "local_cec = 0;" (assignment_expression "local_cec = 0" identifier = number_literal) ;) (expression_statement "local_cb0 = 0;" (assignment_expression "local_cb0 = 0" identifier = number_literal) ;) (expression_statement "local_c98 = 0;" (assignment_expression "local_c98 = 0" identifier = number_literal) ;) (expression_statement "local_c94 = 0;" (assignment_expression "local_c94 = 0" identifier = number_literal) ;) (expression_statement "unaff_R15D = 0;" (assignment_expression "unaff_R15D = 0" identifier = number_literal) ;) (expression_statement "local_cd8 = local_cc8;" (assignment_expression "local_cd8 = local_cc8" identifier = identifier) ;) (expression_statement "local_cc4 = 0;" (assignment_expression "local_cc4 = 0" identifier = number_literal) ;) }) (else_clause "else {\n    puVar22 = (undefined *)dcgettext(0,"The atexit library function failed",5);\n    piVar13 = __errno_location();\n    error(1,*piVar13,puVar22);\n    local_c98 = unaff_R12D;\n  }" else (compound_statement "{\n    puVar22 = (undefined *)dcgettext(0,"The atexit library function failed",5);\n    piVar13 = __errno_location();\n    error(1,*piVar13,puVar22);\n    local_c98 = unaff_R12D;\n  }" { (expression_statement "puVar22 = (undefined *)dcgettext(0,"The atexit library function failed",5);" (assignment_expression "puVar22 = (undefined *)dcgettext(0,"The atexit library function failed",5)" identifier = (cast_expression "(undefined *)dcgettext(0,"The atexit library function failed",5)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"The atexit library function failed",5)" identifier (argument_list "(0,"The atexit library function failed",5)" ( number_literal , (string_literal ""The atexit library function failed"" " string_content ") , number_literal ))))) ;) (expression_statement "piVar13 = __errno_location();" (assignment_expression "piVar13 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(1,*piVar13,puVar22);" (call_expression "error(1,*piVar13,puVar22)" identifier (argument_list "(1,*piVar13,puVar22)" ( number_literal , (pointer_expression "*piVar13" * identifier) , identifier ))) ;) (expression_statement "local_c98 = unaff_R12D;" (assignment_expression "local_c98 = unaff_R12D" identifier = identifier) ;) }))) (while_statement "while( true ) {\n    local_c70 = 0xffffffff;\n    iVar3 = getopt_long(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP);\n    if (iVar3 == -1) break;\n    if (iVar3 - 0x30U < 0x52) {\n                    /* WARNING: Could not recover jumptable at 0x00104479. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))();\n      return uVar6;\n    }\n    FUN_00103906(1);\n    local_cc4 = unaff_R12D;\n  }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n    local_c70 = 0xffffffff;\n    iVar3 = getopt_long(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP);\n    if (iVar3 == -1) break;\n    if (iVar3 - 0x30U < 0x52) {\n                    /* WARNING: Could not recover jumptable at 0x00104479. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))();\n      return uVar6;\n    }\n    FUN_00103906(1);\n    local_cc4 = unaff_R12D;\n  }" { (expression_statement "local_c70 = 0xffffffff;" (assignment_expression "local_c70 = 0xffffffff" identifier = number_literal) ;) (expression_statement "iVar3 = getopt_long(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP);" (assignment_expression "iVar3 = getopt_long(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP)" identifier = (call_expression "getopt_long(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP)" identifier (argument_list "(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP)" ( identifier , identifier , (string_literal ""Abcd:eEil:prsm0SwHPL"" " string_content ") , (pointer_expression "&PTR_s_database_00125720" & identifier) , identifier )))) ;) (if_statement "if (iVar3 == -1) break;" if (parenthesized_expression "(iVar3 == -1)" ( (binary_expression "iVar3 == -1" identifier == number_literal) )) (break_statement "break;" break ;)) (if_statement "if (iVar3 - 0x30U < 0x52) {\n                    /* WARNING: Could not recover jumptable at 0x00104479. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))();\n      return uVar6;\n    }" if (parenthesized_expression "(iVar3 - 0x30U < 0x52)" ( (binary_expression "iVar3 - 0x30U < 0x52" (binary_expression "iVar3 - 0x30U" identifier - number_literal) < number_literal) )) (compound_statement "{\n                    /* WARNING: Could not recover jumptable at 0x00104479. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))();\n      return uVar6;\n    }" { comment comment (expression_statement "uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))();" (assignment_expression "uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))()" identifier = (call_expression "(*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))()" (parenthesized_expression "(*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))" ( (pointer_expression "*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4))" * (cast_expression "(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4))" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4))" ( (binary_expression "puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)" identifier + (pointer_expression "*(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)" * (cast_expression "(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar22 + (ulong)(iVar3 - 0x30U) * 4)" ( (binary_expression "puVar22 + (ulong)(iVar3 - 0x30U) * 4" identifier + (binary_expression "(ulong)(iVar3 - 0x30U) * 4" (call_expression "(ulong)(iVar3 - 0x30U)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(iVar3 - 0x30U)" ( (binary_expression "iVar3 - 0x30U" identifier - number_literal) ))) * number_literal)) ))))) )))) )) (argument_list "()" ( )))) ;) (return_statement "return uVar6;" return identifier ;) })) (expression_statement "FUN_00103906(1);" (call_expression "FUN_00103906(1)" identifier (argument_list "(1)" ( number_literal ))) ;) (expression_statement "local_cc4 = unaff_R12D;" (assignment_expression "local_cc4 = unaff_R12D" identifier = identifier) ;) })) (if_statement "if ((-1 < (int)local_ca4) && (local_d00 != (char *)0x0)) {\n    close(local_ca4);\n    local_ca4 = 0xffffffff;\n  }" if (parenthesized_expression "((-1 < (int)local_ca4) && (local_d00 != (char *)0x0))" ( (binary_expression "(-1 < (int)local_ca4) && (local_d00 != (char *)0x0)" (parenthesized_expression "(-1 < (int)local_ca4)" ( (binary_expression "-1 < (int)local_ca4" number_literal < (cast_expression "(int)local_ca4" ( (type_descriptor "int" primitive_type) ) identifier)) )) && (parenthesized_expression "(local_d00 != (char *)0x0)" ( (binary_expression "local_d00 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (compound_statement "{\n    close(local_ca4);\n    local_ca4 = 0xffffffff;\n  }" { (expression_statement "close(local_ca4);" (call_expression "close(local_ca4)" identifier (argument_list "(local_ca4)" ( identifier ))) ;) (expression_statement "local_ca4 = 0xffffffff;" (assignment_expression "local_ca4 = 0xffffffff" identifier = number_literal) ;) })) (if_statement "if (local_c94 == 0 && local_cec == 0) {\n    if (optind == param_1) {\n      uVar12 = dcgettext(0,"pattern argument expected",5);\n      sVar14 = 0;\n      error(0,0,uVar12);\n      FUN_00103906(1);\n      goto LAB_00104874;\n    }\n    local_cb0 = 1;\n  }\n  else if ((local_cec != 0) && (optind == param_1)) {\n    local_cd8 = local_cc8;\n  }" if (parenthesized_expression "(local_c94 == 0 && local_cec == 0)" ( (binary_expression "local_c94 == 0 && local_cec == 0" (binary_expression "local_c94 == 0" identifier == number_literal) && (binary_expression "local_cec == 0" identifier == number_literal)) )) (compound_statement "{\n    if (optind == param_1) {\n      uVar12 = dcgettext(0,"pattern argument expected",5);\n      sVar14 = 0;\n      error(0,0,uVar12);\n      FUN_00103906(1);\n      goto LAB_00104874;\n    }\n    local_cb0 = 1;\n  }" { (if_statement "if (optind == param_1) {\n      uVar12 = dcgettext(0,"pattern argument expected",5);\n      sVar14 = 0;\n      error(0,0,uVar12);\n      FUN_00103906(1);\n      goto LAB_00104874;\n    }" if (parenthesized_expression "(optind == param_1)" ( (binary_expression "optind == param_1" identifier == identifier) )) (compound_statement "{\n      uVar12 = dcgettext(0,"pattern argument expected",5);\n      sVar14 = 0;\n      error(0,0,uVar12);\n      FUN_00103906(1);\n      goto LAB_00104874;\n    }" { (expression_statement "uVar12 = dcgettext(0,"pattern argument expected",5);" (assignment_expression "uVar12 = dcgettext(0,"pattern argument expected",5)" identifier = (call_expression "dcgettext(0,"pattern argument expected",5)" identifier (argument_list "(0,"pattern argument expected",5)" ( number_literal , (string_literal ""pattern argument expected"" " string_content ") , number_literal )))) ;) (expression_statement "sVar14 = 0;" (assignment_expression "sVar14 = 0" identifier = number_literal) ;) (expression_statement "error(0,0,uVar12);" (call_expression "error(0,0,uVar12)" identifier (argument_list "(0,0,uVar12)" ( number_literal , number_literal , identifier ))) ;) (expression_statement "FUN_00103906(1);" (call_expression "FUN_00103906(1)" identifier (argument_list "(1)" ( number_literal ))) ;) (goto_statement "goto LAB_00104874;" goto statement_identifier ;) })) (expression_statement "local_cb0 = 1;" (assignment_expression "local_cb0 = 1" identifier = number_literal) ;) }) (else_clause "else if ((local_cec != 0) && (optind == param_1)) {\n    local_cd8 = local_cc8;\n  }" else (if_statement "if ((local_cec != 0) && (optind == param_1)) {\n    local_cd8 = local_cc8;\n  }" if (parenthesized_expression "((local_cec != 0) && (optind == param_1))" ( (binary_expression "(local_cec != 0) && (optind == param_1)" (parenthesized_expression "(local_cec != 0)" ( (binary_expression "local_cec != 0" identifier != number_literal) )) && (parenthesized_expression "(optind == param_1)" ( (binary_expression "optind == param_1" identifier == identifier) ))) )) (compound_statement "{\n    local_cd8 = local_cc8;\n  }" { (expression_statement "local_cd8 = local_cc8;" (assignment_expression "local_cd8 = local_cc8" identifier = identifier) ;) })))) (expression_statement "iVar3 = isatty(1);" (assignment_expression "iVar3 = isatty(1)" identifier = (call_expression "isatty(1)" identifier (argument_list "(1)" ( number_literal )))) ;) (expression_statement "DAT_0012628a = iVar3 == 1;" (assignment_expression "DAT_0012628a = iVar3 == 1" identifier = (binary_expression "iVar3 == 1" identifier == number_literal)) ;) (if_statement "if (local_d00 != (char *)0x0) {\n    FUN_001063f9(local_d00,":",1,&local_c80,&local_c78);\n  }" if (parenthesized_expression "(local_d00 != (char *)0x0)" ( (binary_expression "local_d00 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    FUN_001063f9(local_d00,":",1,&local_c80,&local_c78);\n  }" { (expression_statement "FUN_001063f9(local_d00,":",1,&local_c80,&local_c78);" (call_expression "FUN_001063f9(local_d00,":",1,&local_c80,&local_c78)" identifier (argument_list "(local_d00,":",1,&local_c80,&local_c78)" ( identifier , (string_literal "":"" " string_content ") , number_literal , (pointer_expression "&local_c80" & identifier) , (pointer_expression "&local_c78" & identifier) ))) ;) })) (expression_statement "uVar4 = local_cf0 | 0x400000;" (assignment_expression "uVar4 = local_cf0 | 0x400000" identifier = (binary_expression "local_cf0 | 0x400000" identifier | number_literal)) ;) (if_statement "if (unaff_R15D == 0) {\n    uVar4 = local_cf0;\n  }" if (parenthesized_expression "(unaff_R15D == 0)" ( (binary_expression "unaff_R15D == 0" identifier == number_literal) )) (compound_statement "{\n    uVar4 = local_cf0;\n  }" { (expression_statement "uVar4 = local_cf0;" (assignment_expression "uVar4 = local_cf0" identifier = identifier) ;) })) (expression_statement "local_c89 = '\0';" (assignment_expression "local_c89 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;) (expression_statement "local_c90 = 0xffffffff;" (assignment_expression "local_c90 = 0xffffffff" identifier = number_literal) ;) (expression_statement "local_cf0 = uVar4;" (assignment_expression "local_cf0 = uVar4" identifier = identifier) ;) (while_statement "while ((uVar4 = local_ca4, local_cd8 == 0 || (DAT_00126278 < DAT_00126270))) {\n    DAT_00126268 = 0;\n    DAT_00126260 = 0;\n    DAT_00126258 = 0;\n    DAT_00126250 = 0;\n    DAT_00126248 = 0;\n    _DAT_00126240 = 0;\n    if (local_d00 == (char *)0x0) {\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = DAT_00126280;\n      local_cd0 = local_d00;\n      local_ca4 = local_c90;\n    }\n    else {\n      sVar14 = local_c78;\n      if (local_c78 == 1) {\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar4 = FUN_001038af(local_cf8);\n      if ((int)uVar4 < 0) {\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n    }\nLAB_00105254:\n    iVar3 = __fxstat(1,uVar4,&local_c58);\n    if (iVar3 == 0) {\n      local_cb8 = local_c58.st_size;\n      local_c68 = local_c58.st_mtim.tv_sec;\n      local_c60 = local_c58.st_mtim.tv_nsec;\n      tVar7 = time((time_t *)&local_c70);\n      if (tVar7 == -1) {\n        uVar12 = dcgettext(0,"time system call failed",5);\n        piVar13 = __errno_location();\n        error(0,*piVar13,uVar12);\n      }\n      else {\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &local_c68;\n    }\n    else {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (time_t *)0x0;\n    }\n    iVar3 = DAT_00126200;\n    uVar4 = optind;\n    uVar6 = (ulong)optind;\n    iVar5 = param_1 - optind;\n    local_cd4 = DAT_00126200;\n    local_b90 = 0;\n    local_bc8[1] = 0;\n    local_bc8[2] = 0;\n    local_b98 = local_cf8;\n    local_ba0 = local_ce0;\n    DAT_00126220 = 0;\n    DAT_00126218 = 0;\n    DAT_00126210 = 0;\n    DAT_00126288 = '\0';\n    local_bb0 = 0x80;\n    local_bb8 = (byte *)FUN_0010d559(0x80);\n    sVar14 = fread(local_bb8,1,2,local_ba0);\n    pbVar8 = local_bb8;\n    uVar24 = (ulong)(int)sVar14;\n    if (2 < uVar24) {\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }\n    if ((uVar24 < 2) || (local_bb8[1] != 0)) {\nLAB_00105aa4:\n      FUN_001040e7(local_bc8,10,0);\n      sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0);\n      iVar3 = (int)sVar14 + (int)sVar20;\n      if (((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)) {\n        FUN_001040e7(local_bc8,0x100,0);\n        if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        uVar6 = FUN_0010ca58(0,8,local_cf8);\n        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar12,uVar6);\nLAB_00104daa:\n        uVar4 = (uint)uVar6;\n        FUN_001039a8(FUN_00103e25,0);\n      }\n      else {\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar5) {\n        plVar26 = param_2 + (int)uVar4;\n        do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);\n      }\n      lVar10 = DAT_00126218;\n      if (local_cd4 == 1) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }\n      }\n      else if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }\n      if (local_cec != 0) {\n        FUN_001039a8(FUN_00103a70,&DAT_00126240);\n      }\n      if (local_cb0 != 0) {\n        if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }\n      }\n      if (local_cd8 == 0) {\n        FUN_001039a8(FUN_001038a4,&DAT_00126270);\n      }\n      else {\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }\n      pcVar1 = local_b98;\n      if (iVar5 < 2) {\n        DAT_00126208 = FUN_00103755;\n      }\n      else {\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }\n      if (local_cec != 0) {\n        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar12,pcVar1,local_ca0);\n      }\n      local_bc8[0] = getc(local_ba0);\n      if ((local_bc8[0] != -1) && (local_cac != 0)) {\n        ungetc(local_bc8[0],local_ba0);\n        local_bc8[0] = 0;\n      }\n      do {\n        if (local_bc8[0] == -1) break;\n        iVar3 = (*DAT_00126208)(local_bc8);\n      } while (iVar3 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }\n        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar3 = ferror(local_ba0);\n      uVar6 = DAT_00126278;\n      if (iVar3 != 0) {\n        uVar12 = FUN_0010ca58(0,8,local_b98);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        uVar6 = 0;\n      }\n    }\n    else {\n      ppuVar15 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar23 = (char)*pbVar8 + -0x30;\n      if (iVar23 < 2) {\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar16,uVar12,0);\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar16,uVar12,iVar23);\n      uVar6 = 0;\n    }\nLAB_0010514b:\n    iVar3 = fclose(local_ce0);\n    if (iVar3 == -1) {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      goto LAB_0010468d;\n    }\n    if (local_cd0 != (char *)0x0) {\n      free(local_cd0);\n    }\n    if ((local_d00 == (char *)0x0) ||\n       (cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0')) break;\n  }" while (parenthesized_expression "((uVar4 = local_ca4, local_cd8 == 0 || (DAT_00126278 < DAT_00126270)))" ( (parenthesized_expression "(uVar4 = local_ca4, local_cd8 == 0 || (DAT_00126278 < DAT_00126270))" ( (comma_expression "uVar4 = local_ca4, local_cd8 == 0 || (DAT_00126278 < DAT_00126270)" (assignment_expression "uVar4 = local_ca4" identifier = identifier) , (binary_expression "local_cd8 == 0 || (DAT_00126278 < DAT_00126270)" (binary_expression "local_cd8 == 0" identifier == number_literal) || (parenthesized_expression "(DAT_00126278 < DAT_00126270)" ( (binary_expression "DAT_00126278 < DAT_00126270" identifier < identifier) )))) )) )) (compound_statement "{\n    DAT_00126268 = 0;\n    DAT_00126260 = 0;\n    DAT_00126258 = 0;\n    DAT_00126250 = 0;\n    DAT_00126248 = 0;\n    _DAT_00126240 = 0;\n    if (local_d00 == (char *)0x0) {\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = DAT_00126280;\n      local_cd0 = local_d00;\n      local_ca4 = local_c90;\n    }\n    else {\n      sVar14 = local_c78;\n      if (local_c78 == 1) {\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar4 = FUN_001038af(local_cf8);\n      if ((int)uVar4 < 0) {\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n    }\nLAB_00105254:\n    iVar3 = __fxstat(1,uVar4,&local_c58);\n    if (iVar3 == 0) {\n      local_cb8 = local_c58.st_size;\n      local_c68 = local_c58.st_mtim.tv_sec;\n      local_c60 = local_c58.st_mtim.tv_nsec;\n      tVar7 = time((time_t *)&local_c70);\n      if (tVar7 == -1) {\n        uVar12 = dcgettext(0,"time system call failed",5);\n        piVar13 = __errno_location();\n        error(0,*piVar13,uVar12);\n      }\n      else {\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &local_c68;\n    }\n    else {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (time_t *)0x0;\n    }\n    iVar3 = DAT_00126200;\n    uVar4 = optind;\n    uVar6 = (ulong)optind;\n    iVar5 = param_1 - optind;\n    local_cd4 = DAT_00126200;\n    local_b90 = 0;\n    local_bc8[1] = 0;\n    local_bc8[2] = 0;\n    local_b98 = local_cf8;\n    local_ba0 = local_ce0;\n    DAT_00126220 = 0;\n    DAT_00126218 = 0;\n    DAT_00126210 = 0;\n    DAT_00126288 = '\0';\n    local_bb0 = 0x80;\n    local_bb8 = (byte *)FUN_0010d559(0x80);\n    sVar14 = fread(local_bb8,1,2,local_ba0);\n    pbVar8 = local_bb8;\n    uVar24 = (ulong)(int)sVar14;\n    if (2 < uVar24) {\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }\n    if ((uVar24 < 2) || (local_bb8[1] != 0)) {\nLAB_00105aa4:\n      FUN_001040e7(local_bc8,10,0);\n      sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0);\n      iVar3 = (int)sVar14 + (int)sVar20;\n      if (((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)) {\n        FUN_001040e7(local_bc8,0x100,0);\n        if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        uVar6 = FUN_0010ca58(0,8,local_cf8);\n        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar12,uVar6);\nLAB_00104daa:\n        uVar4 = (uint)uVar6;\n        FUN_001039a8(FUN_00103e25,0);\n      }\n      else {\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar5) {\n        plVar26 = param_2 + (int)uVar4;\n        do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);\n      }\n      lVar10 = DAT_00126218;\n      if (local_cd4 == 1) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }\n      }\n      else if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }\n      if (local_cec != 0) {\n        FUN_001039a8(FUN_00103a70,&DAT_00126240);\n      }\n      if (local_cb0 != 0) {\n        if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }\n      }\n      if (local_cd8 == 0) {\n        FUN_001039a8(FUN_001038a4,&DAT_00126270);\n      }\n      else {\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }\n      pcVar1 = local_b98;\n      if (iVar5 < 2) {\n        DAT_00126208 = FUN_00103755;\n      }\n      else {\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }\n      if (local_cec != 0) {\n        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar12,pcVar1,local_ca0);\n      }\n      local_bc8[0] = getc(local_ba0);\n      if ((local_bc8[0] != -1) && (local_cac != 0)) {\n        ungetc(local_bc8[0],local_ba0);\n        local_bc8[0] = 0;\n      }\n      do {\n        if (local_bc8[0] == -1) break;\n        iVar3 = (*DAT_00126208)(local_bc8);\n      } while (iVar3 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }\n        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar3 = ferror(local_ba0);\n      uVar6 = DAT_00126278;\n      if (iVar3 != 0) {\n        uVar12 = FUN_0010ca58(0,8,local_b98);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        uVar6 = 0;\n      }\n    }\n    else {\n      ppuVar15 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar23 = (char)*pbVar8 + -0x30;\n      if (iVar23 < 2) {\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar16,uVar12,0);\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar16,uVar12,iVar23);\n      uVar6 = 0;\n    }\nLAB_0010514b:\n    iVar3 = fclose(local_ce0);\n    if (iVar3 == -1) {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      goto LAB_0010468d;\n    }\n    if (local_cd0 != (char *)0x0) {\n      free(local_cd0);\n    }\n    if ((local_d00 == (char *)0x0) ||\n       (cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0')) break;\n  }" { (expression_statement "DAT_00126268 = 0;" (assignment_expression "DAT_00126268 = 0" identifier = number_literal) ;) (expression_statement "DAT_00126260 = 0;" (assignment_expression "DAT_00126260 = 0" identifier = number_literal) ;) (expression_statement "DAT_00126258 = 0;" (assignment_expression "DAT_00126258 = 0" identifier = number_literal) ;) (expression_statement "DAT_00126250 = 0;" (assignment_expression "DAT_00126250 = 0" identifier = number_literal) ;) (expression_statement "DAT_00126248 = 0;" (assignment_expression "DAT_00126248 = 0" identifier = number_literal) ;) (expression_statement "_DAT_00126240 = 0;" (assignment_expression "_DAT_00126240 = 0" identifier = number_literal) ;) (if_statement "if (local_d00 == (char *)0x0) {\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = DAT_00126280;\n      local_cd0 = local_d00;\n      local_ca4 = local_c90;\n    }\n    else {\n      sVar14 = local_c78;\n      if (local_c78 == 1) {\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar4 = FUN_001038af(local_cf8);\n      if ((int)uVar4 < 0) {\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n    }" if (parenthesized_expression "(local_d00 == (char *)0x0)" ( (binary_expression "local_d00 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = DAT_00126280;\n      local_cd0 = local_d00;\n      local_ca4 = local_c90;\n    }" { (if_statement "if (local_ca4 == 0xffffffff) break;" if (parenthesized_expression "(local_ca4 == 0xffffffff)" ( (binary_expression "local_ca4 == 0xffffffff" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "local_cf8 = DAT_00126280;" (assignment_expression "local_cf8 = DAT_00126280" identifier = identifier) ;) (expression_statement "local_cd0 = local_d00;" (assignment_expression "local_cd0 = local_d00" identifier = identifier) ;) (expression_statement "local_ca4 = local_c90;" (assignment_expression "local_ca4 = local_c90" identifier = identifier) ;) }) (else_clause "else {\n      sVar14 = local_c78;\n      if (local_c78 == 1) {\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar4 = FUN_001038af(local_cf8);\n      if ((int)uVar4 < 0) {\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n    }" else (compound_statement "{\n      sVar14 = local_c78;\n      if (local_c78 == 1) {\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar4 = FUN_001038af(local_cf8);\n      if ((int)uVar4 < 0) {\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n    }" { (expression_statement "sVar14 = local_c78;" (assignment_expression "sVar14 = local_c78" identifier = identifier) ;) (if_statement "if (local_c78 == 1) {\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }" if (parenthesized_expression "(local_c78 == 1)" ( (binary_expression "local_c78 == 1" identifier == number_literal) )) (compound_statement "{\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }" { (labeled_statement "LAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }" statement_identifier : (if_statement "if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }" if (parenthesized_expression "(local_d00[local_c80] == '-')" ( (binary_expression "local_d00[local_c80] == '-'" (subscript_expression "local_d00[local_c80]" identifier [ identifier ]) == (char_literal "'-'" ' character ')) )) (compound_statement "{\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }" { (if_statement "if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }" if (parenthesized_expression "(local_c89 == '\0')" ( (binary_expression "local_c89 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }" { (expression_statement "local_c89 = '\x01';" (assignment_expression "local_c89 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "local_cf8 = "<stdin>";" (assignment_expression "local_cf8 = "<stdin>"" identifier = (string_literal ""<stdin>"" " string_content ")) ;) (expression_statement "local_cd0 = (char *)0x0;" (assignment_expression "local_cd0 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar4 = local_cc8;" (assignment_expression "uVar4 = local_cc8" identifier = identifier) ;) (goto_statement "goto LAB_00105254;" goto statement_identifier ;) })) (expression_statement "uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);" (assignment_expression "uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5)" identifier = (call_expression "dcgettext(0,"warning: the locate database can only be read from stdin once.",5)" identifier (argument_list "(0,"warning: the locate database can only be read from stdin once.",5)" ( number_literal , (string_literal ""warning: the locate database can only be read from stdin once."" " string_content ") , number_literal )))) ;) (expression_statement "error(0,0,uVar12);" (call_expression "error(0,0,uVar12)" identifier (argument_list "(0,0,uVar12)" ( number_literal , number_literal , identifier ))) ;) (goto_statement "goto LAB_0010468d;" goto statement_identifier ;) }))) (if_statement "if (local_d00[local_c80] != '.') goto LAB_00104891;" if (parenthesized_expression "(local_d00[local_c80] != '.')" ( (binary_expression "local_d00[local_c80] != '.'" (subscript_expression "local_d00[local_c80]" identifier [ identifier ]) != (char_literal "'.'" ' character ')) )) (goto_statement "goto LAB_00104891;" goto statement_identifier ;)) (expression_statement "local_cf8 = "/var/cache/locate/locatedb";" (assignment_expression "local_cf8 = "/var/cache/locate/locatedb"" identifier = (string_literal ""/var/cache/locate/locatedb"" " string_content ")) ;) (expression_statement "local_cd0 = (char *)0x0;" (assignment_expression "local_cd0 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }" else (compound_statement "{\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }" { (expression_statement "local_cf8 = "/var/cache/locate/locatedb";" (assignment_expression "local_cf8 = "/var/cache/locate/locatedb"" identifier = (string_literal ""/var/cache/locate/locatedb"" " string_content ")) ;) (expression_statement "local_cd0 = (char *)0x0;" (assignment_expression "local_cd0 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }" if (parenthesized_expression "(local_c78 != 0)" ( (binary_expression "local_c78 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }" { (labeled_statement "LAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);" statement_identifier : (expression_statement "local_cf8 = strndup(local_d00 + local_c80,sVar14);" (assignment_expression "local_cf8 = strndup(local_d00 + local_c80,sVar14)" identifier = (call_expression "strndup(local_d00 + local_c80,sVar14)" identifier (argument_list "(local_d00 + local_c80,sVar14)" ( (binary_expression "local_d00 + local_c80" identifier + identifier) , identifier )))) ;)) (expression_statement "local_cd0 = local_cf8;" (assignment_expression "local_cd0 = local_cf8" identifier = identifier) ;) })) }))) (expression_statement "uVar4 = FUN_001038af(local_cf8);" (assignment_expression "uVar4 = FUN_001038af(local_cf8)" identifier = (call_expression "FUN_001038af(local_cf8)" identifier (argument_list "(local_cf8)" ( identifier )))) ;) (if_statement "if ((int)uVar4 < 0) {\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }" if (parenthesized_expression "((int)uVar4 < 0)" ( (binary_expression "(int)uVar4 < 0" (cast_expression "(int)uVar4" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }" { (expression_statement "uVar12 = FUN_0010ca58(0,8,local_cf8);" (assignment_expression "uVar12 = FUN_0010ca58(0,8,local_cf8)" identifier = (call_expression "FUN_0010ca58(0,8,local_cf8)" identifier (argument_list "(0,8,local_cf8)" ( number_literal , number_literal , identifier )))) ;) (expression_statement "piVar13 = __errno_location();" (assignment_expression "piVar13 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,*piVar13,&DAT_001207c7,uVar12);" (call_expression "error(0,*piVar13,&DAT_001207c7,uVar12)" identifier (argument_list "(0,*piVar13,&DAT_001207c7,uVar12)" ( number_literal , (pointer_expression "*piVar13" * identifier) , (pointer_expression "&DAT_001207c7" & identifier) , identifier ))) ;) (goto_statement "goto LAB_0010468d;" goto statement_identifier ;) })) }))) (labeled_statement "LAB_00105254:\n    iVar3 = __fxstat(1,uVar4,&local_c58);" statement_identifier : (expression_statement "iVar3 = __fxstat(1,uVar4,&local_c58);" (assignment_expression "iVar3 = __fxstat(1,uVar4,&local_c58)" identifier = (call_expression "__fxstat(1,uVar4,&local_c58)" identifier (argument_list "(1,uVar4,&local_c58)" ( number_literal , identifier , (pointer_expression "&local_c58" & identifier) )))) ;)) (if_statement "if (iVar3 == 0) {\n      local_cb8 = local_c58.st_size;\n      local_c68 = local_c58.st_mtim.tv_sec;\n      local_c60 = local_c58.st_mtim.tv_nsec;\n      tVar7 = time((time_t *)&local_c70);\n      if (tVar7 == -1) {\n        uVar12 = dcgettext(0,"time system call failed",5);\n        piVar13 = __errno_location();\n        error(0,*piVar13,uVar12);\n      }\n      else {\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &local_c68;\n    }\n    else {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (time_t *)0x0;\n    }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n      local_cb8 = local_c58.st_size;\n      local_c68 = local_c58.st_mtim.tv_sec;\n      local_c60 = local_c58.st_mtim.tv_nsec;\n      tVar7 = time((time_t *)&local_c70);\n      if (tVar7 == -1) {\n        uVar12 = dcgettext(0,"time system call failed",5);\n        piVar13 = __errno_location();\n        error(0,*piVar13,uVar12);\n      }\n      else {\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &local_c68;\n    }" { (expression_statement "local_cb8 = local_c58.st_size;" (assignment_expression "local_cb8 = local_c58.st_size" identifier = (field_expression "local_c58.st_size" identifier . field_identifier)) ;) (expression_statement "local_c68 = local_c58.st_mtim.tv_sec;" (assignment_expression "local_c68 = local_c58.st_mtim.tv_sec" identifier = (field_expression "local_c58.st_mtim.tv_sec" (field_expression "local_c58.st_mtim" identifier . field_identifier) . field_identifier)) ;) (expression_statement "local_c60 = local_c58.st_mtim.tv_nsec;" (assignment_expression "local_c60 = local_c58.st_mtim.tv_nsec" identifier = (field_expression "local_c58.st_mtim.tv_nsec" (field_expression "local_c58.st_mtim" identifier . field_identifier) . field_identifier)) ;) (expression_statement "tVar7 = time((time_t *)&local_c70);" (assignment_expression "tVar7 = time((time_t *)&local_c70)" identifier = (call_expression "time((time_t *)&local_c70)" identifier (argument_list "((time_t *)&local_c70)" ( (cast_expression "(time_t *)&local_c70" ( (type_descriptor "time_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_c70" & identifier)) )))) ;) (if_statement "if (tVar7 == -1) {\n        uVar12 = dcgettext(0,"time system call failed",5);\n        piVar13 = __errno_location();\n        error(0,*piVar13,uVar12);\n      }\n      else {\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }" if (parenthesized_expression "(tVar7 == -1)" ( (binary_expression "tVar7 == -1" identifier == number_literal) )) (compound_statement "{\n        uVar12 = dcgettext(0,"time system call failed",5);\n        piVar13 = __errno_location();\n        error(0,*piVar13,uVar12);\n      }" { (expression_statement "uVar12 = dcgettext(0,"time system call failed",5);" (assignment_expression "uVar12 = dcgettext(0,"time system call failed",5)" identifier = (call_expression "dcgettext(0,"time system call failed",5)" identifier (argument_list "(0,"time system call failed",5)" ( number_literal , (string_literal ""time system call failed"" " string_content ") , number_literal )))) ;) (expression_statement "piVar13 = __errno_location();" (assignment_expression "piVar13 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,*piVar13,uVar12);" (call_expression "error(0,*piVar13,uVar12)" identifier (argument_list "(0,*piVar13,uVar12)" ( number_literal , (pointer_expression "*piVar13" * identifier) , identifier ))) ;) }) (else_clause "else {\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }" else (compound_statement "{\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }" { (expression_statement "dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);" (assignment_expression "dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec)" identifier = (call_expression "difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec)" identifier (argument_list "(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec)" ( (call_expression "CONCAT44(uStack_c6c,local_c70)" identifier (argument_list "(uStack_c6c,local_c70)" ( identifier , identifier ))) , (field_expression "local_c58.st_mtim.tv_sec" (field_expression "local_c58.st_mtim" identifier . field_identifier) . field_identifier) )))) ;) (expression_statement "iVar3 = DAT_00126018;" (assignment_expression "iVar3 = DAT_00126018" identifier = identifier) ;) (if_statement "if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }" if (parenthesized_expression "((double)(uint)(DAT_00126018 * 0x15180) < dVar28)" ( (binary_expression "(double)(uint)(DAT_00126018 * 0x15180) < dVar28" (cast_expression "(double)(uint)(DAT_00126018 * 0x15180)" ( (type_descriptor "double" primitive_type) ) (call_expression "(uint)(DAT_00126018 * 0x15180)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(DAT_00126018 * 0x15180)" ( (binary_expression "DAT_00126018 * 0x15180" identifier * number_literal) )))) < identifier) )) (compound_statement "{\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }" { (expression_statement "uVar12 = dcgettext(0,&DAT_0011ed91,5);" (assignment_expression "uVar12 = dcgettext(0,&DAT_0011ed91,5)" identifier = (call_expression "dcgettext(0,&DAT_0011ed91,5)" identifier (argument_list "(0,&DAT_0011ed91,5)" ( number_literal , (pointer_expression "&DAT_0011ed91" & identifier) , number_literal )))) ;) (expression_statement "uVar16 = dcgettext(0,&DAT_0011ed91,5);" (assignment_expression "uVar16 = dcgettext(0,&DAT_0011ed91,5)" identifier = (call_expression "dcgettext(0,&DAT_0011ed91,5)" identifier (argument_list "(0,&DAT_0011ed91,5)" ( number_literal , (pointer_expression "&DAT_0011ed91" & identifier) , number_literal )))) ;) (expression_statement "uVar17 = FUN_0010ca58(0,8,local_cf8);" (assignment_expression "uVar17 = FUN_0010ca58(0,8,local_cf8)" identifier = (call_expression "FUN_0010ca58(0,8,local_cf8)" identifier (argument_list "(0,8,local_cf8)" ( number_literal , number_literal , identifier )))) ;) (expression_statement "uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);" (assignment_expression "uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5)" identifier = (call_expression "dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5)" identifier (argument_list "(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5)" ( number_literal , (string_literal ""warning: database %s is more than %u %s old (actual age is %.1f %s)"" " string_content ") , number_literal )))) ;) (expression_statement "error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);" (call_expression "error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12)" identifier (argument_list "(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12)" ( (binary_expression "dVar28 / _DAT_0011ed98" identifier / identifier) , number_literal , number_literal , identifier , identifier , identifier , identifier , identifier ))) ;) })) }))) (expression_statement "local_ce0 = fdopen(uVar4,"r");" (assignment_expression "local_ce0 = fdopen(uVar4,"r")" identifier = (call_expression "fdopen(uVar4,"r")" identifier (argument_list "(uVar4,"r")" ( identifier , (string_literal ""r"" " string_content ") )))) ;) (if_statement "if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;" if (parenthesized_expression "(local_ce0 == (FILE *)0x0)" ( (binary_expression "local_ce0 == (FILE *)0x0" identifier == (cast_expression "(FILE *)0x0" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00104b19;" goto statement_identifier ;)) (expression_statement "local_cc0 = &local_c68;" (assignment_expression "local_cc0 = &local_c68" identifier = (pointer_expression "&local_c68" & identifier)) ;) }) (else_clause "else {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (time_t *)0x0;\n    }" else (compound_statement "{\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (time_t *)0x0;\n    }" { (expression_statement "uVar12 = FUN_0010ca58(0,8,local_cf8);" (assignment_expression "uVar12 = FUN_0010ca58(0,8,local_cf8)" identifier = (call_expression "FUN_0010ca58(0,8,local_cf8)" identifier (argument_list "(0,8,local_cf8)" ( number_literal , number_literal , identifier )))) ;) (expression_statement "piVar13 = __errno_location();" (assignment_expression "piVar13 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,*piVar13,&DAT_001207c7,uVar12);" (call_expression "error(0,*piVar13,&DAT_001207c7,uVar12)" identifier (argument_list "(0,*piVar13,&DAT_001207c7,uVar12)" ( number_literal , (pointer_expression "*piVar13" * identifier) , (pointer_expression "&DAT_001207c7" & identifier) , identifier ))) ;) (expression_statement "local_ce0 = fdopen(uVar4,"r");" (assignment_expression "local_ce0 = fdopen(uVar4,"r")" identifier = (call_expression "fdopen(uVar4,"r")" identifier (argument_list "(uVar4,"r")" ( identifier , (string_literal ""r"" " string_content ") )))) ;) (if_statement "if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }" if (parenthesized_expression "(local_ce0 == (FILE *)0x0)" ( (binary_expression "local_ce0 == (FILE *)0x0" identifier == (cast_expression "(FILE *)0x0" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }" { (labeled_statement "LAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);" statement_identifier : (expression_statement "uVar12 = FUN_0010ca58(0,8,local_cf8);" (assignment_expression "uVar12 = FUN_0010ca58(0,8,local_cf8)" identifier = (call_expression "FUN_0010ca58(0,8,local_cf8)" identifier (argument_list "(0,8,local_cf8)" ( number_literal , number_literal , identifier )))) ;)) (expression_statement "piVar13 = __errno_location();" (assignment_expression "piVar13 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,*piVar13,&DAT_001207c7,uVar12);" (call_expression "error(0,*piVar13,&DAT_001207c7,uVar12)" identifier (argument_list "(0,*piVar13,&DAT_001207c7,uVar12)" ( number_literal , (pointer_expression "*piVar13" * identifier) , (pointer_expression "&DAT_001207c7" & identifier) , identifier ))) ;) (goto_statement "goto LAB_0010468d;" goto statement_identifier ;) })) (expression_statement "local_cb8 = 0;" (assignment_expression "local_cb8 = 0" identifier = number_literal) ;) (expression_statement "local_cc0 = (time_t *)0x0;" (assignment_expression "local_cc0 = (time_t *)0x0" identifier = (cast_expression "(time_t *)0x0" ( (type_descriptor "time_t *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) (expression_statement "iVar3 = DAT_00126200;" (assignment_expression "iVar3 = DAT_00126200" identifier = identifier) ;) (expression_statement "uVar4 = optind;" (assignment_expression "uVar4 = optind" identifier = identifier) ;) (expression_statement "uVar6 = (ulong)optind;" (assignment_expression "uVar6 = (ulong)optind" identifier = (cast_expression "(ulong)optind" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "iVar5 = param_1 - optind;" (assignment_expression "iVar5 = param_1 - optind" identifier = (binary_expression "param_1 - optind" identifier - identifier)) ;) (expression_statement "local_cd4 = DAT_00126200;" (assignment_expression "local_cd4 = DAT_00126200" identifier = identifier) ;) (expression_statement "local_b90 = 0;" (assignment_expression "local_b90 = 0" identifier = number_literal) ;) (expression_statement "local_bc8[1] = 0;" (assignment_expression "local_bc8[1] = 0" (subscript_expression "local_bc8[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "local_bc8[2] = 0;" (assignment_expression "local_bc8[2] = 0" (subscript_expression "local_bc8[2]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "local_b98 = local_cf8;" (assignment_expression "local_b98 = local_cf8" identifier = identifier) ;) (expression_statement "local_ba0 = local_ce0;" (assignment_expression "local_ba0 = local_ce0" identifier = identifier) ;) (expression_statement "DAT_00126220 = 0;" (assignment_expression "DAT_00126220 = 0" identifier = number_literal) ;) (expression_statement "DAT_00126218 = 0;" (assignment_expression "DAT_00126218 = 0" identifier = number_literal) ;) (expression_statement "DAT_00126210 = 0;" (assignment_expression "DAT_00126210 = 0" identifier = number_literal) ;) (expression_statement "DAT_00126288 = '\0';" (assignment_expression "DAT_00126288 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "local_bb0 = 0x80;" (assignment_expression "local_bb0 = 0x80" identifier = number_literal) ;) (expression_statement "local_bb8 = (byte *)FUN_0010d559(0x80);" (assignment_expression "local_bb8 = (byte *)FUN_0010d559(0x80)" identifier = (cast_expression "(byte *)FUN_0010d559(0x80)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0010d559(0x80)" identifier (argument_list "(0x80)" ( number_literal ))))) ;) (expression_statement "sVar14 = fread(local_bb8,1,2,local_ba0);" (assignment_expression "sVar14 = fread(local_bb8,1,2,local_ba0)" identifier = (call_expression "fread(local_bb8,1,2,local_ba0)" identifier (argument_list "(local_bb8,1,2,local_ba0)" ( identifier , number_literal , number_literal , identifier )))) ;) (expression_statement "pbVar8 = local_bb8;" (assignment_expression "pbVar8 = local_bb8" identifier = identifier) ;) (expression_statement "uVar24 = (ulong)(int)sVar14;" (assignment_expression "uVar24 = (ulong)(int)sVar14" identifier = (cast_expression "(ulong)(int)sVar14" ( (type_descriptor "ulong" type_identifier) ) (cast_expression "(int)sVar14" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (2 < uVar24) {\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }" if (parenthesized_expression "(2 < uVar24)" ( (binary_expression "2 < uVar24" number_literal < identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }" { comment (expression_statement "__assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");" (call_expression "__assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb")" identifier (argument_list "("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb")" ( (string_literal ""len <= 2"" " string_content ") , (string_literal ""locate.c"" " string_content ") , number_literal , (string_literal ""looking_at_slocate_locatedb"" " string_content ") ))) ;) })) (if_statement "if ((uVar24 < 2) || (local_bb8[1] != 0)) {\nLAB_00105aa4:\n      FUN_001040e7(local_bc8,10,0);\n      sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0);\n      iVar3 = (int)sVar14 + (int)sVar20;\n      if (((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)) {\n        FUN_001040e7(local_bc8,0x100,0);\n        if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        uVar6 = FUN_0010ca58(0,8,local_cf8);\n        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar12,uVar6);\nLAB_00104daa:\n        uVar4 = (uint)uVar6;\n        FUN_001039a8(FUN_00103e25,0);\n      }\n      else {\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar5) {\n        plVar26 = param_2 + (int)uVar4;\n        do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);\n      }\n      lVar10 = DAT_00126218;\n      if (local_cd4 == 1) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }\n      }\n      else if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }\n      if (local_cec != 0) {\n        FUN_001039a8(FUN_00103a70,&DAT_00126240);\n      }\n      if (local_cb0 != 0) {\n        if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }\n      }\n      if (local_cd8 == 0) {\n        FUN_001039a8(FUN_001038a4,&DAT_00126270);\n      }\n      else {\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }\n      pcVar1 = local_b98;\n      if (iVar5 < 2) {\n        DAT_00126208 = FUN_00103755;\n      }\n      else {\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }\n      if (local_cec != 0) {\n        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar12,pcVar1,local_ca0);\n      }\n      local_bc8[0] = getc(local_ba0);\n      if ((local_bc8[0] != -1) && (local_cac != 0)) {\n        ungetc(local_bc8[0],local_ba0);\n        local_bc8[0] = 0;\n      }\n      do {\n        if (local_bc8[0] == -1) break;\n        iVar3 = (*DAT_00126208)(local_bc8);\n      } while (iVar3 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }\n        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar3 = ferror(local_ba0);\n      uVar6 = DAT_00126278;\n      if (iVar3 != 0) {\n        uVar12 = FUN_0010ca58(0,8,local_b98);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        uVar6 = 0;\n      }\n    }\n    else {\n      ppuVar15 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar23 = (char)*pbVar8 + -0x30;\n      if (iVar23 < 2) {\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar16,uVar12,0);\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar16,uVar12,iVar23);\n      uVar6 = 0;\n    }" if (parenthesized_expression "((uVar24 < 2) || (local_bb8[1] != 0))" ( (binary_expression "(uVar24 < 2) || (local_bb8[1] != 0)" (parenthesized_expression "(uVar24 < 2)" ( (binary_expression "uVar24 < 2" identifier < number_literal) )) || (parenthesized_expression "(local_bb8[1] != 0)" ( (binary_expression "local_bb8[1] != 0" (subscript_expression "local_bb8[1]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\nLAB_00105aa4:\n      FUN_001040e7(local_bc8,10,0);\n      sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0);\n      iVar3 = (int)sVar14 + (int)sVar20;\n      if (((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)) {\n        FUN_001040e7(local_bc8,0x100,0);\n        if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        uVar6 = FUN_0010ca58(0,8,local_cf8);\n        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar12,uVar6);\nLAB_00104daa:\n        uVar4 = (uint)uVar6;\n        FUN_001039a8(FUN_00103e25,0);\n      }\n      else {\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar5) {\n        plVar26 = param_2 + (int)uVar4;\n        do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);\n      }\n      lVar10 = DAT_00126218;\n      if (local_cd4 == 1) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }\n      }\n      else if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }\n      if (local_cec != 0) {\n        FUN_001039a8(FUN_00103a70,&DAT_00126240);\n      }\n      if (local_cb0 != 0) {\n        if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }\n      }\n      if (local_cd8 == 0) {\n        FUN_001039a8(FUN_001038a4,&DAT_00126270);\n      }\n      else {\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }\n      pcVar1 = local_b98;\n      if (iVar5 < 2) {\n        DAT_00126208 = FUN_00103755;\n      }\n      else {\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }\n      if (local_cec != 0) {\n        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar12,pcVar1,local_ca0);\n      }\n      local_bc8[0] = getc(local_ba0);\n      if ((local_bc8[0] != -1) && (local_cac != 0)) {\n        ungetc(local_bc8[0],local_ba0);\n        local_bc8[0] = 0;\n      }\n      do {\n        if (local_bc8[0] == -1) break;\n        iVar3 = (*DAT_00126208)(local_bc8);\n      } while (iVar3 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }\n        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar3 = ferror(local_ba0);\n      uVar6 = DAT_00126278;\n      if (iVar3 != 0) {\n        uVar12 = FUN_0010ca58(0,8,local_b98);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        uVar6 = 0;\n      }\n    }" { (labeled_statement "LAB_00105aa4:\n      FUN_001040e7(local_bc8,10,0);" statement_identifier : (expression_statement "FUN_001040e7(local_bc8,10,0);" (call_expression "FUN_001040e7(local_bc8,10,0)" identifier (argument_list "(local_bc8,10,0)" ( identifier , number_literal , number_literal ))) ;)) (expression_statement "sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0);" (assignment_expression "sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0)" identifier = (call_expression "fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0)" identifier (argument_list "(local_bb8 + uVar24,1,10 - uVar24,local_ba0)" ( (binary_expression "local_bb8 + uVar24" identifier + identifier) , number_literal , (binary_expression "10 - uVar24" number_literal - identifier) , identifier )))) ;) (expression_statement "iVar3 = (int)sVar14 + (int)sVar20;" (assignment_expression "iVar3 = (int)sVar14 + (int)sVar20" identifier = (binary_expression "(int)sVar14 + (int)sVar20" (cast_expression "(int)sVar14" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)sVar20" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)) {\n        FUN_001040e7(local_bc8,0x100,0);\n        if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        uVar6 = FUN_0010ca58(0,8,local_cf8);\n        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar12,uVar6);\nLAB_00104daa:\n        uVar4 = (uint)uVar6;\n        FUN_001039a8(FUN_00103e25,0);\n      }\n      else {\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }" if (parenthesized_expression "(((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0))" ( (binary_expression "((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)" (parenthesized_expression "((ulong)(long)iVar3 < 10)" ( (binary_expression "(ulong)(long)iVar3 < 10" (cast_expression "(ulong)(long)iVar3" ( (type_descriptor "ulong" type_identifier) ) (cast_expression "(long)iVar3" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) < number_literal) )) || (parenthesized_expression "(local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)" ( (comma_expression "local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0" (assignment_expression "local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10)" identifier = (call_expression "memcmp(local_bb8,&DAT_0011eb40,10)" identifier (argument_list "(local_bb8,&DAT_0011eb40,10)" ( identifier , (pointer_expression "&DAT_0011eb40" & identifier) , number_literal )))) , (binary_expression "local_ca8 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n        FUN_001040e7(local_bc8,0x100,0);\n        if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        uVar6 = FUN_0010ca58(0,8,local_cf8);\n        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar12,uVar6);\nLAB_00104daa:\n        uVar4 = (uint)uVar6;\n        FUN_001039a8(FUN_00103e25,0);\n      }" { (expression_statement "FUN_001040e7(local_bc8,0x100,0);" (call_expression "FUN_001040e7(local_bc8,0x100,0)" identifier (argument_list "(local_bc8,0x100,0)" ( identifier , number_literal , number_literal ))) ;) (if_statement "if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }" if (parenthesized_expression "((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100))" ( (binary_expression "(0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)" (parenthesized_expression "(0xff < iVar3)" ( (binary_expression "0xff < iVar3" number_literal < identifier) )) || (parenthesized_expression "(sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)" ( (comma_expression "sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100" (assignment_expression "sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0)" identifier = (call_expression "fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0)" identifier (argument_list "(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0)" ( (binary_expression "local_bb8 + iVar3" identifier + identifier) , number_literal , (cast_expression "(long)(0x100 - iVar3)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (parenthesized_expression "(0x100 - iVar3)" ( (binary_expression "0x100 - iVar3" number_literal - identifier) ))) , identifier )))) , (binary_expression "iVar3 + (int)sVar14 == 0x100" (binary_expression "iVar3 + (int)sVar14" identifier + (cast_expression "(int)sVar14" ( (type_descriptor "int" primitive_type) ) identifier)) == number_literal)) ))) )) (compound_statement "{\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }" { (expression_statement "pbVar8 = local_b8c;" (assignment_expression "pbVar8 = local_b8c" identifier = identifier) ;) (expression_statement "pbVar21 = local_bb8;" (assignment_expression "pbVar21 = local_bb8" identifier = identifier) ;) (do_statement "do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);" do (compound_statement "{\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          }" { (expression_statement "*pbVar8 = *pbVar21;" (assignment_expression "*pbVar8 = *pbVar21" (pointer_expression "*pbVar8" * identifier) = (pointer_expression "*pbVar21" * identifier)) ;) (expression_statement "pbVar8[0x80] = pbVar21[1];" (assignment_expression "pbVar8[0x80] = pbVar21[1]" (subscript_expression "pbVar8[0x80]" identifier [ number_literal ]) = (subscript_expression "pbVar21[1]" identifier [ number_literal ])) ;) (expression_statement "pbVar21 = pbVar21 + 2;" (assignment_expression "pbVar21 = pbVar21 + 2" identifier = (binary_expression "pbVar21 + 2" identifier + number_literal)) ;) (expression_statement "pbVar8 = pbVar8 + 1;" (assignment_expression "pbVar8 = pbVar8 + 1" identifier = (binary_expression "pbVar8 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(pbVar8 != local_b0c)" ( (binary_expression "pbVar8 != local_b0c" identifier != identifier) )) ;) (expression_statement "FUN_001039a8(FUN_00104183,0);" (call_expression "FUN_001039a8(FUN_00104183,0)" identifier (argument_list "(FUN_00104183,0)" ( identifier , number_literal ))) ;) (expression_statement "local_cac = local_cc8;" (assignment_expression "local_cac = local_cc8" identifier = identifier) ;) (expression_statement "local_ca0 = "old";" (assignment_expression "local_ca0 = "old"" identifier = (string_literal ""old"" " string_content ")) ;) (expression_statement "local_ca8 = 1;" (assignment_expression "local_ca8 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_0010543a;" goto statement_identifier ;) })) (expression_statement "uVar6 = FUN_0010ca58(0,8,local_cf8);" (assignment_expression "uVar6 = FUN_0010ca58(0,8,local_cf8)" identifier = (call_expression "FUN_0010ca58(0,8,local_cf8)" identifier (argument_list "(0,8,local_cf8)" ( number_literal , number_literal , identifier )))) ;) (expression_statement "uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);" (assignment_expression "uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5)" identifier = (call_expression "dcgettext(0,"Old-format locate database %s is too short to be valid",5)" identifier (argument_list "(0,"Old-format locate database %s is too short to be valid",5)" ( number_literal , (string_literal ""Old-format locate database %s is too short to be valid"" " string_content ") , number_literal )))) ;) (expression_statement "error(1,0,uVar12,uVar6);" (call_expression "error(1,0,uVar12,uVar6)" identifier (argument_list "(1,0,uVar12,uVar6)" ( number_literal , number_literal , identifier , identifier ))) ;) (labeled_statement "LAB_00104daa:\n        uVar4 = (uint)uVar6;" statement_identifier : (expression_statement "uVar4 = (uint)uVar6;" (assignment_expression "uVar4 = (uint)uVar6" identifier = (cast_expression "(uint)uVar6" ( (type_descriptor "uint" type_identifier) ) identifier)) ;)) (expression_statement "FUN_001039a8(FUN_00103e25,0);" (call_expression "FUN_001039a8(FUN_00103e25,0)" identifier (argument_list "(FUN_00103e25,0)" ( identifier , number_literal ))) ;) }) (else_clause "else {\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }" else (compound_statement "{\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }" { (expression_statement "FUN_001039a8(FUN_00103e3d,0);" (call_expression "FUN_001039a8(FUN_00103e3d,0)" identifier (argument_list "(FUN_00103e3d,0)" ( identifier , number_literal ))) ;) (expression_statement "local_ca0 = "GNU LOCATE02";" (assignment_expression "local_ca0 = "GNU LOCATE02"" identifier = (string_literal ""GNU LOCATE02"" " string_content ")) ;) (expression_statement "local_cac = 0;" (assignment_expression "local_cac = 0" identifier = number_literal) ;) (labeled_statement "LAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;" statement_identifier : (if_statement "if (local_cc4 != 0) goto LAB_00104daa;" if (parenthesized_expression "(local_cc4 != 0)" ( (binary_expression "local_cc4 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00104daa;" goto statement_identifier ;))) }))) (if_statement "if (0 < iVar5) {\n        plVar26 = param_2 + (int)uVar4;\n        do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);\n      }" if (parenthesized_expression "(0 < iVar5)" ( (binary_expression "0 < iVar5" number_literal < identifier) )) (compound_statement "{\n        plVar26 = param_2 + (int)uVar4;\n        do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);\n      }" { (expression_statement "plVar26 = param_2 + (int)uVar4;" (assignment_expression "plVar26 = param_2 + (int)uVar4" identifier = (binary_expression "param_2 + (int)uVar4" identifier + (cast_expression "(int)uVar4" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (do_statement "do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);" do (compound_statement "{\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        }" { (expression_statement "DAT_00126288 = '\x01';" (assignment_expression "DAT_00126288 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "pcVar1 = (char *)*plVar26;" (assignment_expression "pcVar1 = (char *)*plVar26" identifier = (cast_expression "(char *)*plVar26" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*plVar26" * identifier))) ;) (if_statement "if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }" if (parenthesized_expression "(local_d04 == 0)" ( (binary_expression "local_d04 == 0" identifier == number_literal) )) (compound_statement "{\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }" { (expression_statement "pcVar11 = strpbrk(pcVar1,"*?[]\\");" (assignment_expression "pcVar11 = strpbrk(pcVar1,"*?[]\\")" identifier = (call_expression "strpbrk(pcVar1,"*?[]\\")" identifier (argument_list "(pcVar1,"*?[]\\")" ( identifier , (string_literal ""*?[]\\"" " string_content escape_sequence ") )))) ;) (if_statement "if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }" if (parenthesized_expression "(pcVar11 == (char *)0x0)" ( (binary_expression "pcVar11 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }" { (expression_statement "sVar14 = __ctype_get_mb_cur_max();" (assignment_expression "sVar14 = __ctype_get_mb_cur_max()" identifier = (call_expression "__ctype_get_mb_cur_max()" identifier (argument_list "()" ( )))) ;) (if_statement "if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }" if (parenthesized_expression "(sVar14 == 1)" ( (binary_expression "sVar14 == 1" identifier == number_literal) )) (compound_statement "{\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }" { (expression_statement "pcVar25 = FUN_00103ce1;" (assignment_expression "pcVar25 = FUN_00103ce1" identifier = identifier) ;) (if_statement "if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }" if (parenthesized_expression "(unaff_R15D != 0)" ( (binary_expression "unaff_R15D != 0" identifier != number_literal) )) (compound_statement "{\n                  pcVar25 = FUN_00103d36;\n                }" { (expression_statement "pcVar25 = FUN_00103d36;" (assignment_expression "pcVar25 = FUN_00103d36" identifier = identifier) ;) })) }) (else_clause "else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }" else (compound_statement "{\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }" { (expression_statement "pcVar25 = FUN_00103ca5;" (assignment_expression "pcVar25 = FUN_00103ca5" identifier = identifier) ;) (if_statement "if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }" if (parenthesized_expression "(unaff_R15D != 0)" ( (binary_expression "unaff_R15D != 0" identifier != number_literal) )) (compound_statement "{\n                  pcVar25 = FUN_00103cc3;\n                }" { (expression_statement "pcVar25 = FUN_00103cc3;" (assignment_expression "pcVar25 = FUN_00103cc3" identifier = identifier) ;) })) }))) (expression_statement "FUN_001039a8(pcVar25,pcVar1);" (call_expression "FUN_001039a8(pcVar25,pcVar1)" identifier (argument_list "(pcVar25,pcVar1)" ( identifier , identifier ))) ;) }) (else_clause "else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }" else (compound_statement "{\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }" { (if_statement "if (unaff_R15D == 0) goto LAB_00104ee7;" if (parenthesized_expression "(unaff_R15D == 0)" ( (binary_expression "unaff_R15D == 0" identifier == number_literal) )) (goto_statement "goto LAB_00104ee7;" goto statement_identifier ;)) (expression_statement "FUN_001039a8(FUN_00103db3,pcVar1);" (call_expression "FUN_001039a8(FUN_00103db3,pcVar1)" identifier (argument_list "(FUN_00103db3,pcVar1)" ( identifier , identifier ))) ;) }))) }) (else_clause "else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }" else (compound_statement "{\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }" { (expression_statement "puVar9 = (undefined8 *)FUN_0010d559(0x40);" (assignment_expression "puVar9 = (undefined8 *)FUN_0010d559(0x40)" identifier = (cast_expression "(undefined8 *)FUN_0010d559(0x40)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0010d559(0x40)" identifier (argument_list "(0x40)" ( number_literal ))))) ;) (expression_statement "*puVar9 = 0;" (assignment_expression "*puVar9 = 0" (pointer_expression "*puVar9" * identifier) = number_literal) ;) (expression_statement "puVar9[1] = 0;" (assignment_expression "puVar9[1] = 0" (subscript_expression "puVar9[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar9[2] = 0;" (assignment_expression "puVar9[2] = 0" (subscript_expression "puVar9[2]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar9[3] = 0;" (assignment_expression "puVar9[3] = 0" (subscript_expression "puVar9[3]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar9[4] = 0;" (assignment_expression "puVar9[4] = 0" (subscript_expression "puVar9[4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar9[5] = 0;" (assignment_expression "puVar9[5] = 0" (subscript_expression "puVar9[5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar9[6] = 0;" (assignment_expression "puVar9[6] = 0" (subscript_expression "puVar9[6]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar9[7] = 0;" (assignment_expression "puVar9[7] = 0" (subscript_expression "puVar9[7]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "FUN_0011b1c7((long)(int)local_cf0);" (call_expression "FUN_0011b1c7((long)(int)local_cf0)" identifier (argument_list "((long)(int)local_cf0)" ( (cast_expression "(long)(int)local_cf0" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)local_cf0" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ;) (expression_statement "puVar9[1] = 100;" (assignment_expression "puVar9[1] = 100" (subscript_expression "puVar9[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "uVar12 = FUN_0010d559(100);" (assignment_expression "uVar12 = FUN_0010d559(100)" identifier = (call_expression "FUN_0010d559(100)" identifier (argument_list "(100)" ( number_literal )))) ;) (expression_statement "*puVar9 = uVar12;" (assignment_expression "*puVar9 = uVar12" (pointer_expression "*puVar9" * identifier) = identifier) ;) (expression_statement "puVar9[4] = 0;" (assignment_expression "puVar9[4] = 0" (subscript_expression "puVar9[4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar9[3] = (long)(int)local_cf0;" (assignment_expression "puVar9[3] = (long)(int)local_cf0" (subscript_expression "puVar9[3]" identifier [ number_literal ]) = (cast_expression "(long)(int)local_cf0" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)local_cf0" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "puVar9[5] = 0;" (assignment_expression "puVar9[5] = 0" (subscript_expression "puVar9[5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "uVar6 = 0xffffffffffffffff;" (assignment_expression "uVar6 = 0xffffffffffffffff" identifier = number_literal) ;) (expression_statement "pcVar11 = pcVar1;" (assignment_expression "pcVar11 = pcVar1" identifier = identifier) ;) (do_statement "do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');" do (compound_statement "{\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            }" { (if_statement "if (uVar6 == 0) break;" if (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "uVar6 = uVar6 - 1;" (assignment_expression "uVar6 = uVar6 - 1" identifier = (binary_expression "uVar6 - 1" identifier - number_literal)) ;) (expression_statement "cVar2 = *pcVar11;" (assignment_expression "cVar2 = *pcVar11" identifier = (pointer_expression "*pcVar11" * identifier)) ;) (expression_statement "pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;" (assignment_expression "pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1" identifier = (binary_expression "pcVar11 + (ulong)bVar27 * -2 + 1" (binary_expression "pcVar11 + (ulong)bVar27 * -2" identifier + (binary_expression "(ulong)bVar27 * -2" (cast_expression "(ulong)bVar27" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(cVar2 != '\0')" ( (binary_expression "cVar2 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) ;) (expression_statement "lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);" (assignment_expression "lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9)" identifier = (call_expression "FUN_0011b159(pcVar1,~uVar6 - 1,puVar9)" identifier (argument_list "(pcVar1,~uVar6 - 1,puVar9)" ( identifier , (binary_expression "~uVar6 - 1" (unary_expression "~uVar6" ~ identifier) - number_literal) , identifier )))) ;) (if_statement "if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }" if (parenthesized_expression "(lVar10 == 0)" ( (binary_expression "lVar10 == 0" identifier == number_literal) )) (compound_statement "{\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }" { (expression_statement "FUN_001039a8(FUN_00103ddb,puVar9);" (call_expression "FUN_001039a8(FUN_00103ddb,puVar9)" identifier (argument_list "(FUN_00103ddb,puVar9)" ( identifier , identifier ))) ;) }) (else_clause "else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }" else (compound_statement "{\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }" { (expression_statement "error(1,0,&DAT_001207c7,lVar10);" (call_expression "error(1,0,&DAT_001207c7,lVar10)" identifier (argument_list "(1,0,&DAT_001207c7,lVar10)" ( number_literal , number_literal , (pointer_expression "&DAT_001207c7" & identifier) , identifier ))) ;) (labeled_statement "LAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);" statement_identifier : (expression_statement "FUN_001039a8(FUN_00103d8b,pcVar1);" (call_expression "FUN_001039a8(FUN_00103d8b,pcVar1)" identifier (argument_list "(FUN_00103d8b,pcVar1)" ( identifier , identifier ))) ;)) }))) }))) (expression_statement "plVar26 = plVar26 + 1;" (assignment_expression "plVar26 = plVar26 + 1" identifier = (binary_expression "plVar26 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1)" ( (binary_expression "plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1" identifier != (binary_expression "param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1" (binary_expression "param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1)" (binary_expression "param_2 + (long)(int)uVar4" identifier + (cast_expression "(long)(int)uVar4" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)uVar4" ( (type_descriptor "int" primitive_type) ) identifier))) + (call_expression "(ulong)(iVar5 - 1)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(iVar5 - 1)" ( (binary_expression "iVar5 - 1" identifier - number_literal) )))) + number_literal)) )) ;) })) (expression_statement "lVar10 = DAT_00126218;" (assignment_expression "lVar10 = DAT_00126218" identifier = identifier) ;) (if_statement "if (local_cd4 == 1) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }\n      }\n      else if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }" if (parenthesized_expression "(local_cd4 == 1)" ( (binary_expression "local_cd4 == 1" identifier == number_literal) )) (compound_statement "{\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }\n      }" { (expression_statement "DAT_00126288 = '\x01';" (assignment_expression "DAT_00126288 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (if_statement "if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }" if (parenthesized_expression "(DAT_00126014 == 0)" ( (binary_expression "DAT_00126014 == 0" identifier == number_literal) )) (compound_statement "{\n          FUN_001039a8(FUN_00103b4d,0);\n        }" { (expression_statement "FUN_001039a8(FUN_00103b4d,0);" (call_expression "FUN_001039a8(FUN_00103b4d,0)" identifier (argument_list "(FUN_00103b4d,0)" ( identifier , number_literal ))) ;) }) (else_clause "else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }" else (compound_statement "{\n          FUN_001039a8(FUN_00103bf9,0);\n        }" { (expression_statement "FUN_001039a8(FUN_00103bf9,0);" (call_expression "FUN_001039a8(FUN_00103bf9,0)" identifier (argument_list "(FUN_00103bf9,0)" ( identifier , number_literal ))) ;) }))) }) (else_clause "else if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }" else (if_statement "if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }" if (parenthesized_expression "(local_cd4 == 2)" ( (binary_expression "local_cd4 == 2" identifier == number_literal) )) (compound_statement "{\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }" { (expression_statement "DAT_00126288 = '\x01';" (assignment_expression "DAT_00126288 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (if_statement "if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }" if (parenthesized_expression "(DAT_00126014 == 0)" ( (binary_expression "DAT_00126014 == 0" identifier == number_literal) )) (compound_statement "{\n          FUN_001039a8(FUN_00103ba3,0);\n        }" { (expression_statement "FUN_001039a8(FUN_00103ba3,0);" (call_expression "FUN_001039a8(FUN_00103ba3,0)" identifier (argument_list "(FUN_00103ba3,0)" ( identifier , number_literal ))) ;) }) (else_clause "else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }" else (compound_statement "{\n          FUN_001039a8(FUN_00103c4f,0);\n        }" { (expression_statement "FUN_001039a8(FUN_00103c4f,0);" (call_expression "FUN_001039a8(FUN_00103c4f,0)" identifier (argument_list "(FUN_00103c4f,0)" ( identifier , number_literal ))) ;) }))) })))) (if_statement "if (local_cec != 0) {\n        FUN_001039a8(FUN_00103a70,&DAT_00126240);\n      }" if (parenthesized_expression "(local_cec != 0)" ( (binary_expression "local_cec != 0" identifier != number_literal) )) (compound_statement "{\n        FUN_001039a8(FUN_00103a70,&DAT_00126240);\n      }" { (expression_statement "FUN_001039a8(FUN_00103a70,&DAT_00126240);" (call_expression "FUN_001039a8(FUN_00103a70,&DAT_00126240)" identifier (argument_list "(FUN_00103a70,&DAT_00126240)" ( identifier , (pointer_expression "&DAT_00126240" & identifier) ))) ;) })) (if_statement "if (local_cb0 != 0) {\n        if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }\n      }" if (parenthesized_expression "(local_cb0 != 0)" ( (binary_expression "local_cb0 != 0" identifier != number_literal) )) (compound_statement "{\n        if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }\n      }" { (if_statement "if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }" if (parenthesized_expression "(DAT_00126289 == '\0')" ( (binary_expression "DAT_00126289 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          FUN_001039a8(FUN_001039fb,0);\n        }" { (expression_statement "FUN_001039a8(FUN_001039fb,0);" (call_expression "FUN_001039a8(FUN_001039fb,0)" identifier (argument_list "(FUN_001039fb,0)" ( identifier , number_literal ))) ;) }) (else_clause "else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }" else (compound_statement "{\n          FUN_001039a8(FUN_00103a2b,0);\n        }" { (expression_statement "FUN_001039a8(FUN_00103a2b,0);" (call_expression "FUN_001039a8(FUN_00103a2b,0)" identifier (argument_list "(FUN_00103a2b,0)" ( identifier , number_literal ))) ;) }))) })) (if_statement "if (local_cd8 == 0) {\n        FUN_001039a8(FUN_001038a4,&DAT_00126270);\n      }\n      else {\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }" if (parenthesized_expression "(local_cd8 == 0)" ( (binary_expression "local_cd8 == 0" identifier == number_literal) )) (compound_statement "{\n        FUN_001039a8(FUN_001038a4,&DAT_00126270);\n      }" { (expression_statement "FUN_001039a8(FUN_001038a4,&DAT_00126270);" (call_expression "FUN_001039a8(FUN_001038a4,&DAT_00126270)" identifier (argument_list "(FUN_001038a4,&DAT_00126270)" ( identifier , (pointer_expression "&DAT_00126270" & identifier) ))) ;) }) (else_clause "else {\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }" else (compound_statement "{\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }" { (expression_statement "FUN_001039a8(FUN_00103887,&DAT_00126270);" (call_expression "FUN_001039a8(FUN_00103887,&DAT_00126270)" identifier (argument_list "(FUN_00103887,&DAT_00126270)" ( identifier , (pointer_expression "&DAT_00126270" & identifier) ))) ;) }))) (expression_statement "pcVar1 = local_b98;" (assignment_expression "pcVar1 = local_b98" identifier = identifier) ;) (if_statement "if (iVar5 < 2) {\n        DAT_00126208 = FUN_00103755;\n      }\n      else {\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }" if (parenthesized_expression "(iVar5 < 2)" ( (binary_expression "iVar5 < 2" identifier < number_literal) )) (compound_statement "{\n        DAT_00126208 = FUN_00103755;\n      }" { (expression_statement "DAT_00126208 = FUN_00103755;" (assignment_expression "DAT_00126208 = FUN_00103755" identifier = identifier) ;) }) (else_clause "else {\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }" else (compound_statement "{\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }" { (expression_statement "DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);" (assignment_expression "DAT_00126210 = *(undefined8 *)(lVar10 + 0x10)" identifier = (pointer_expression "*(undefined8 *)(lVar10 + 0x10)" * (cast_expression "(undefined8 *)(lVar10 + 0x10)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar10 + 0x10)" ( (binary_expression "lVar10 + 0x10" identifier + number_literal) ))))) ;) (if_statement "if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }" if (parenthesized_expression "(local_c98 == 0)" ( (binary_expression "local_c98 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_00126208 = FUN_0010378e;\n        }" { (expression_statement "DAT_00126208 = FUN_0010378e;" (assignment_expression "DAT_00126208 = FUN_0010378e" identifier = identifier) ;) }) (else_clause "else {\n          DAT_00126208 = FUN_0010380e;\n        }" else (compound_statement "{\n          DAT_00126208 = FUN_0010380e;\n        }" { (expression_statement "DAT_00126208 = FUN_0010380e;" (assignment_expression "DAT_00126208 = FUN_0010380e" identifier = identifier) ;) }))) }))) (if_statement "if (local_cec != 0) {\n        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar12,pcVar1,local_ca0);\n      }" if (parenthesized_expression "(local_cec != 0)" ( (binary_expression "local_cec != 0" identifier != number_literal) )) (compound_statement "{\n        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar12,pcVar1,local_ca0);\n      }" { (expression_statement "uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5)" identifier = (call_expression "dcgettext(0,"Database %s is in the %s format.\n",5)" identifier (argument_list "(0,"Database %s is in the %s format.\n",5)" ( number_literal , (string_literal ""Database %s is in the %s format.\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "__printf_chk(1,uVar12,pcVar1,local_ca0);" (call_expression "__printf_chk(1,uVar12,pcVar1,local_ca0)" identifier (argument_list "(1,uVar12,pcVar1,local_ca0)" ( number_literal , identifier , identifier , identifier ))) ;) })) (expression_statement "local_bc8[0] = getc(local_ba0);" (assignment_expression "local_bc8[0] = getc(local_ba0)" (subscript_expression "local_bc8[0]" identifier [ number_literal ]) = (call_expression "getc(local_ba0)" identifier (argument_list "(local_ba0)" ( identifier )))) ;) (if_statement "if ((local_bc8[0] != -1) && (local_cac != 0)) {\n        ungetc(local_bc8[0],local_ba0);\n        local_bc8[0] = 0;\n      }" if (parenthesized_expression "((local_bc8[0] != -1) && (local_cac != 0))" ( (binary_expression "(local_bc8[0] != -1) && (local_cac != 0)" (parenthesized_expression "(local_bc8[0] != -1)" ( (binary_expression "local_bc8[0] != -1" (subscript_expression "local_bc8[0]" identifier [ number_literal ]) != number_literal) )) && (parenthesized_expression "(local_cac != 0)" ( (binary_expression "local_cac != 0" identifier != number_literal) ))) )) (compound_statement "{\n        ungetc(local_bc8[0],local_ba0);\n        local_bc8[0] = 0;\n      }" { (expression_statement "ungetc(local_bc8[0],local_ba0);" (call_expression "ungetc(local_bc8[0],local_ba0)" identifier (argument_list "(local_bc8[0],local_ba0)" ( (subscript_expression "local_bc8[0]" identifier [ number_literal ]) , identifier ))) ;) (expression_statement "local_bc8[0] = 0;" (assignment_expression "local_bc8[0] = 0" (subscript_expression "local_bc8[0]" identifier [ number_literal ]) = number_literal) ;) })) (do_statement "do {\n        if (local_bc8[0] == -1) break;\n        iVar3 = (*DAT_00126208)(local_bc8);\n      } while (iVar3 != 8);" do (compound_statement "{\n        if (local_bc8[0] == -1) break;\n        iVar3 = (*DAT_00126208)(local_bc8);\n      }" { (if_statement "if (local_bc8[0] == -1) break;" if (parenthesized_expression "(local_bc8[0] == -1)" ( (binary_expression "local_bc8[0] == -1" (subscript_expression "local_bc8[0]" identifier [ number_literal ]) == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar3 = (*DAT_00126208)(local_bc8);" (assignment_expression "iVar3 = (*DAT_00126208)(local_bc8)" identifier = (call_expression "(*DAT_00126208)(local_bc8)" (parenthesized_expression "(*DAT_00126208)" ( (pointer_expression "*DAT_00126208" * identifier) )) (argument_list "(local_bc8)" ( identifier )))) ;) }) while (parenthesized_expression "(iVar3 != 8)" ( (binary_expression "iVar3 != 8" identifier != number_literal) )) ;) (if_statement "if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }\n        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }\n      }" if (parenthesized_expression "(local_cec != 0)" ( (binary_expression "local_cec != 0" identifier != number_literal) )) (compound_statement "{\n        if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }\n        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }\n      }" { (if_statement "if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }" if (parenthesized_expression "(local_ca8 != 0)" ( (binary_expression "local_ca8 != 0" identifier != number_literal) )) (compound_statement "{\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }" { (expression_statement "uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);" (assignment_expression "uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5)" identifier = (call_expression "dcgettext(0,"The database has little-endian machine-word encoding.\n",5)" identifier (argument_list "(0,"The database has little-endian machine-word encoding.\n",5)" ( number_literal , (string_literal ""The database has little-endian machine-word encoding.\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);" (assignment_expression "uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5)" identifier = (call_expression "dcgettext(0,"The database has big-endian machine-word encoding.\n",5)" identifier (argument_list "(0,"The database has big-endian machine-word encoding.\n",5)" ( number_literal , (string_literal ""The database has big-endian machine-word encoding.\n"" " string_content escape_sequence ") , number_literal )))) ;) (if_statement "if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }" if (parenthesized_expression "(local_b90 == 1)" ( (binary_expression "local_b90 == 1" identifier == number_literal) )) (compound_statement "{\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }" { (expression_statement "__printf_chk(1,&DAT_001207c7,uVar12);" (call_expression "__printf_chk(1,&DAT_001207c7,uVar12)" identifier (argument_list "(1,&DAT_001207c7,uVar12)" ( number_literal , (pointer_expression "&DAT_001207c7" & identifier) , identifier ))) ;) }) (else_clause "else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }" else (if_statement "if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }" if (parenthesized_expression "(local_b90 == 2)" ( (binary_expression "local_b90 == 2" identifier == number_literal) )) (compound_statement "{\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }" { (expression_statement "__printf_chk(1,&DAT_001207c7,uVar16);" (call_expression "__printf_chk(1,&DAT_001207c7,uVar16)" identifier (argument_list "(1,&DAT_001207c7,uVar16)" ( number_literal , (pointer_expression "&DAT_001207c7" & identifier) , identifier ))) ;) }) (else_clause "else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }" else (compound_statement "{\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }" { (expression_statement "uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);" (assignment_expression "uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5)" identifier = (call_expression "dcgettext(0,"The database machine-word encoding order is not obvious.\n",5)" identifier (argument_list "(0,"The database machine-word encoding order is not obvious.\n",5)" ( number_literal , (string_literal ""The database machine-word encoding order is not obvious.\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "__printf_chk(1,uVar12);" (call_expression "__printf_chk(1,uVar12)" identifier (argument_list "(1,uVar12)" ( number_literal , identifier ))) ;) }))))) })) (if_statement "if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }" if (parenthesized_expression "(local_cc0 != (time_t *)0x0 || local_cb8 != 0)" ( (binary_expression "local_cc0 != (time_t *)0x0 || local_cb8 != 0" (binary_expression "local_cc0 != (time_t *)0x0" identifier != (cast_expression "(time_t *)0x0" ( (type_descriptor "time_t *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) || (binary_expression "local_cb8 != 0" identifier != number_literal)) )) (compound_statement "{\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }" { (if_statement "if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }" if (parenthesized_expression "((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0))" ( (binary_expression "(local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)" (parenthesized_expression "(local_cc0 != (time_t *)0x0)" ( (binary_expression "local_cc0 != (time_t *)0x0" identifier != (cast_expression "(time_t *)0x0" ( (type_descriptor "time_t *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(__tp = localtime(local_cc0), __tp != (tm *)0x0)" ( (comma_expression "__tp = localtime(local_cc0), __tp != (tm *)0x0" (assignment_expression "__tp = localtime(local_cc0)" identifier = (call_expression "localtime(local_cc0)" identifier (argument_list "(local_cc0)" ( identifier )))) , (binary_expression "__tp != (tm *)0x0" identifier != (cast_expression "(tm *)0x0" ( (type_descriptor "tm *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ))) )) (compound_statement "{\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }" { (expression_statement "sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);" (assignment_expression "sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp)" identifier = (call_expression "strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp)" identifier (argument_list "(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp)" ( identifier , number_literal , (string_literal ""%Y:%m:%d %H:%M:%S"" " string_content ") , identifier )))) ;) (if_statement "if (sVar14 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }" if (parenthesized_expression "(sVar14 != 0x13)" ( (binary_expression "sVar14 != 0x13" identifier != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }" { comment (expression_statement "__assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");" (call_expression "__assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats")" identifier (argument_list "("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats")" ( (string_literal ""printed == TIME_BUF_LEN-1"" " string_content ") , (string_literal ""locate.c"" " string_content ") , number_literal , (string_literal ""print_stats"" " string_content ") ))) ;) })) (if_statement "if (local_2c5 != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }" if (parenthesized_expression "(local_2c5 != '\0')" ( (binary_expression "local_2c5 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }" { comment (expression_statement "__assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");" (call_expression "__assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats")" identifier (argument_list "("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats")" ( (string_literal ""whenbuf[TIME_BUF_LEN-1] == 0"" " string_content ") , (string_literal ""locate.c"" " string_content ") , number_literal , (string_literal ""print_stats"" " string_content ") ))) ;) })) (if_statement "if (local_2c6 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }" if (parenthesized_expression "(local_2c6 == '\0')" ( (binary_expression "local_2c6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }" { comment (expression_statement "__assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");" (call_expression "__assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats")" identifier (argument_list "("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats")" ( (string_literal ""whenbuf[TIME_BUF_LEN-2] != 0"" " string_content ") , (string_literal ""locate.c"" " string_content ") , number_literal , (string_literal ""print_stats"" " string_content ") ))) ;) })) (expression_statement "tVar7 = local_cc0[1];" (assignment_expression "tVar7 = local_cc0[1]" identifier = (subscript_expression "local_cc0[1]" identifier [ number_literal ])) ;) (expression_statement "uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);" (assignment_expression "uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5)" identifier = (call_expression "dcgettext(0,"Database was last modified at %s.%09ld",5)" identifier (argument_list "(0,"Database was last modified at %s.%09ld",5)" ( number_literal , (string_literal ""Database was last modified at %s.%09ld"" " string_content ") , number_literal )))) ;) (expression_statement "__printf_chk(1,uVar12,local_2d8,tVar7);" (call_expression "__printf_chk(1,uVar12,local_2d8,tVar7)" identifier (argument_list "(1,uVar12,local_2d8,tVar7)" ( number_literal , identifier , identifier , identifier ))) ;) (expression_statement "sVar14 = strftime(local_2d8,0x14,"%z",__tp);" (assignment_expression "sVar14 = strftime(local_2d8,0x14,"%z",__tp)" identifier = (call_expression "strftime(local_2d8,0x14,"%z",__tp)" identifier (argument_list "(local_2d8,0x14,"%z",__tp)" ( identifier , number_literal , (string_literal ""%z"" " string_content ") , identifier )))) ;) (if_statement "if (sVar14 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }" if (parenthesized_expression "(sVar14 != 5)" ( (binary_expression "sVar14 != 5" identifier != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }" { comment (expression_statement "__assert_fail("printed == 5","locate.c",0x351,"print_stats");" (call_expression "__assert_fail("printed == 5","locate.c",0x351,"print_stats")" identifier (argument_list "("printed == 5","locate.c",0x351,"print_stats")" ( (string_literal ""printed == 5"" " string_content ") , (string_literal ""locate.c"" " string_content ") , number_literal , (string_literal ""print_stats"" " string_content ") ))) ;) })) (expression_statement "__printf_chk(1," %s\n",local_2d8);" (call_expression "__printf_chk(1," %s\n",local_2d8)" identifier (argument_list "(1," %s\n",local_2d8)" ( number_literal , (string_literal "" %s\n"" " string_content escape_sequence ") , identifier ))) ;) })) (expression_statement "uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);" (assignment_expression "uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1)" identifier = (call_expression "FUN_0010670e(local_cb8,local_a88,0,1,1)" identifier (argument_list "(local_cb8,local_a88,0,1,1)" ( identifier , identifier , number_literal , number_literal , number_literal )))) ;) (expression_statement "uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);" (assignment_expression "uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5)" identifier = (call_expression "dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5)" identifier (argument_list "(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5)" ( number_literal , (string_literal ""Locate database size: %s byte\n"" " string_content escape_sequence ") , (string_literal ""Locate database size: %s bytes\n"" " string_content escape_sequence ") , identifier , number_literal )))) ;) (expression_statement "__printf_chk(1,uVar16,uVar12);" (call_expression "__printf_chk(1,uVar16,uVar12)" identifier (argument_list "(1,uVar16,uVar12)" ( number_literal , identifier , identifier ))) ;) (expression_statement "uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);" (assignment_expression "uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1)" identifier = (call_expression "FUN_0010670e(DAT_00126248,local_a88,0,1,1)" identifier (argument_list "(DAT_00126248,local_a88,0,1,1)" ( identifier , identifier , number_literal , number_literal , number_literal )))) ;) (if_statement "if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }" if (parenthesized_expression "(DAT_00126288 == '\0')" ( (binary_expression "DAT_00126288 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }" { (expression_statement "uVar16 = dcgettext(0,"All Filenames: %s\n",5);" (assignment_expression "uVar16 = dcgettext(0,"All Filenames: %s\n",5)" identifier = (call_expression "dcgettext(0,"All Filenames: %s\n",5)" identifier (argument_list "(0,"All Filenames: %s\n",5)" ( number_literal , (string_literal ""All Filenames: %s\n"" " string_content escape_sequence ") , number_literal )))) ;) }) (else_clause "else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }" else (compound_statement "{\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }" { (expression_statement "uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);" (assignment_expression "uVar16 = dcgettext(0,"Matching Filenames: %s\n",5)" identifier = (call_expression "dcgettext(0,"Matching Filenames: %s\n",5)" identifier (argument_list "(0,"Matching Filenames: %s\n",5)" ( number_literal , (string_literal ""Matching Filenames: %s\n"" " string_content escape_sequence ") , number_literal )))) ;) }))) (expression_statement "__printf_chk(1,uVar16,uVar12);" (call_expression "__printf_chk(1,uVar16,uVar12)" identifier (argument_list "(1,uVar16,uVar12)" ( number_literal , identifier , identifier ))) ;) (expression_statement "uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);" (assignment_expression "uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1)" identifier = (call_expression "FUN_0010670e(DAT_00126268,local_2d8,0,1,1)" identifier (argument_list "(DAT_00126268,local_2d8,0,1,1)" ( identifier , identifier , number_literal , number_literal , number_literal )))) ;) (expression_statement "uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);" (assignment_expression "uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1)" identifier = (call_expression "FUN_0010670e(DAT_00126260,local_568,0,1,1)" identifier (argument_list "(DAT_00126260,local_568,0,1,1)" ( identifier , identifier , number_literal , number_literal , number_literal )))) ;) (expression_statement "uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);" (assignment_expression "uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1)" identifier = (call_expression "FUN_0010670e(DAT_00126258,local_7f8,0,1,1)" identifier (argument_list "(DAT_00126258,local_7f8,0,1,1)" ( identifier , identifier , number_literal , number_literal , number_literal )))) ;) (expression_statement "uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);" (assignment_expression "uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1)" identifier = (call_expression "FUN_0010670e(DAT_00126250,local_a88,0,1,1)" identifier (argument_list "(DAT_00126250,local_a88,0,1,1)" ( identifier , identifier , number_literal , number_literal , number_literal )))) ;) (expression_statement "uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);" (assignment_expression "uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5)" identifier = (call_expression "dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5)" identifier (argument_list "(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5)" ( number_literal , (string_literal ""File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"" " string_content escape_sequence string_content escape_sequence escape_sequence escape_sequence string_content escape_sequence escape_sequence string_content escape_sequence escape_sequence string_content escape_sequence ") , number_literal )))) ;) (expression_statement "__printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);" (call_expression "__printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12)" identifier (argument_list "(1,uVar19,uVar18,uVar17,uVar16,uVar12)" ( number_literal , identifier , identifier , identifier , identifier , identifier ))) ;) (if_statement "if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }" if (parenthesized_expression "(iVar5 == 0)" ( (binary_expression "iVar5 == 0" identifier == number_literal) )) (compound_statement "{\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }" { (if_statement "if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }" if (parenthesized_expression "(DAT_00126288 == '\0')" ( (binary_expression "DAT_00126288 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }" { (if_statement "if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }" if (parenthesized_expression "(DAT_00126250 == 0)" ( (binary_expression "DAT_00126250 == 0" identifier == number_literal) )) (compound_statement "{\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }" { (expression_statement "uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Compression ratio is undefined\n",5)" identifier = (call_expression "dcgettext(0,"Compression ratio is undefined\n",5)" identifier (argument_list "(0,"Compression ratio is undefined\n",5)" ( number_literal , (string_literal ""Compression ratio is undefined\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "__printf_chk(1,uVar12);" (call_expression "__printf_chk(1,uVar12)" identifier (argument_list "(1,uVar12)" ( number_literal , identifier ))) ;) }) (else_clause "else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }" else (compound_statement "{\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }" { (expression_statement "local_ce8 = (double)DAT_00126250;" (assignment_expression "local_ce8 = (double)DAT_00126250" identifier = (cast_expression "(double)DAT_00126250" ( (type_descriptor "double" primitive_type) ) identifier)) ;) (expression_statement "uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5)" identifier = (call_expression "dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5)" identifier (argument_list "(0,"Compression ratio %4.2f%% (higher is better)\n",5)" ( number_literal , (string_literal ""Compression ratio %4.2f%% (higher is better)\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "__printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;" (call_expression "__printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)" identifier (argument_list "(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)" ( (binary_expression "((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8" (parenthesized_expression "((local_ce8 - (double)local_cb8) * _DAT_0011eda0)" ( (binary_expression "(local_ce8 - (double)local_cb8) * _DAT_0011eda0" (parenthesized_expression "(local_ce8 - (double)local_cb8)" ( (binary_expression "local_ce8 - (double)local_cb8" identifier - (cast_expression "(double)local_cb8" ( (type_descriptor "double" primitive_type) ) identifier)) )) * identifier) )) / identifier) , number_literal , identifier ))) ;) }))) }) (else_clause "else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }" else (compound_statement "{\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }" { (expression_statement "uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);" (assignment_expression "uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5)" identifier = (call_expression "dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5)" identifier (argument_list "(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5)" ( number_literal , (string_literal ""Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "__printf_chk(1,uVar12);" (call_expression "__printf_chk(1,uVar12)" identifier (argument_list "(1,uVar12)" ( number_literal , identifier ))) ;) }))) })) (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;) })) })) (expression_statement "iVar3 = ferror(local_ba0);" (assignment_expression "iVar3 = ferror(local_ba0)" identifier = (call_expression "ferror(local_ba0)" identifier (argument_list "(local_ba0)" ( identifier )))) ;) (expression_statement "uVar6 = DAT_00126278;" (assignment_expression "uVar6 = DAT_00126278" identifier = identifier) ;) (if_statement "if (iVar3 != 0) {\n        uVar12 = FUN_0010ca58(0,8,local_b98);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        uVar6 = 0;\n      }" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n        uVar12 = FUN_0010ca58(0,8,local_b98);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        uVar6 = 0;\n      }" { (expression_statement "uVar12 = FUN_0010ca58(0,8,local_b98);" (assignment_expression "uVar12 = FUN_0010ca58(0,8,local_b98)" identifier = (call_expression "FUN_0010ca58(0,8,local_b98)" identifier (argument_list "(0,8,local_b98)" ( number_literal , number_literal , identifier )))) ;) (expression_statement "piVar13 = __errno_location();" (assignment_expression "piVar13 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,*piVar13,&DAT_001207c7,uVar12);" (call_expression "error(0,*piVar13,&DAT_001207c7,uVar12)" identifier (argument_list "(0,*piVar13,&DAT_001207c7,uVar12)" ( number_literal , (pointer_expression "*piVar13" * identifier) , (pointer_expression "&DAT_001207c7" & identifier) , identifier ))) ;) (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;) })) }) (else_clause "else {\n      ppuVar15 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar23 = (char)*pbVar8 + -0x30;\n      if (iVar23 < 2) {\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar16,uVar12,0);\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar16,uVar12,iVar23);\n      uVar6 = 0;\n    }" else (compound_statement "{\n      ppuVar15 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar23 = (char)*pbVar8 + -0x30;\n      if (iVar23 < 2) {\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar16,uVar12,0);\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar16,uVar12,iVar23);\n      uVar6 = 0;\n    }" { (expression_statement "ppuVar15 = __ctype_b_loc();" (assignment_expression "ppuVar15 = __ctype_b_loc()" identifier = (call_expression "__ctype_b_loc()" identifier (argument_list "()" ( )))) ;) (if_statement "if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;" if (parenthesized_expression "((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0)" ( (binary_expression "(*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0" (parenthesized_expression "(*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8)" ( (binary_expression "*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8" (pointer_expression "*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1)" * (cast_expression "(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1)" ( (binary_expression "(long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1" (binary_expression "(long)*ppuVar15 + (ulong)*pbVar8 * 2" (cast_expression "(long)*ppuVar15" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "*ppuVar15" * identifier)) + (binary_expression "(ulong)*pbVar8 * 2" (binary_expression "(ulong)*pbVar8" (parenthesized_expression "(ulong)" ( identifier )) * identifier) * number_literal)) + number_literal) )))) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00105aa4;" goto statement_identifier ;)) (expression_statement "iVar23 = (char)*pbVar8 + -0x30;" (assignment_expression "iVar23 = (char)*pbVar8 + -0x30" identifier = (binary_expression "(char)*pbVar8 + -0x30" (cast_expression "(char)*pbVar8" ( (type_descriptor "char" primitive_type) ) (pointer_expression "*pbVar8" * identifier)) + number_literal)) ;) (if_statement "if (iVar23 < 2) {\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }" if (parenthesized_expression "(iVar23 < 2)" ( (binary_expression "iVar23 < 2" identifier < number_literal) )) (compound_statement "{\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }" { (if_statement "if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }" if (parenthesized_expression "(iVar23 == 1)" ( (binary_expression "iVar23 == 1" identifier == number_literal) )) (compound_statement "{\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }" { (if_statement "if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }" if (parenthesized_expression "(DAT_00126200 == 2)" ( (binary_expression "DAT_00126200 == 2" identifier == number_literal) )) (compound_statement "{\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }" { (expression_statement "uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);" (assignment_expression "uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5)" identifier = (call_expression "dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5)" identifier (argument_list "(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5)" ( number_literal , (string_literal ""You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "error(0,0,uVar12);" (call_expression "error(0,0,uVar12)" identifier (argument_list "(0,0,uVar12)" ( number_literal , number_literal , identifier ))) ;) (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_0010514b;" goto statement_identifier ;) })) (if_statement "if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }" if (parenthesized_expression "((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0))" ( (binary_expression "(iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)" (parenthesized_expression "(iVar3 != 1)" ( (binary_expression "iVar3 != 1" identifier != number_literal) )) && (parenthesized_expression "(local_cd4 = 1, local_cb0 != 0 || local_cec != 0)" ( (comma_expression "local_cd4 = 1, local_cb0 != 0 || local_cec != 0" (assignment_expression "local_cd4 = 1" identifier = number_literal) , (binary_expression "local_cb0 != 0 || local_cec != 0" (binary_expression "local_cb0 != 0" identifier != number_literal) || (binary_expression "local_cec != 0" identifier != number_literal))) ))) )) (compound_statement "{\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }" { (expression_statement "uVar12 = FUN_0010ca58(0,8,local_b98);" (assignment_expression "uVar12 = FUN_0010ca58(0,8,local_b98)" identifier = (call_expression "FUN_0010ca58(0,8,local_b98)" identifier (argument_list "(0,8,local_b98)" ( number_literal , number_literal , identifier )))) ;) (expression_statement "uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);" (assignment_expression "uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5)" identifier = (call_expression "dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5)" identifier (argument_list "(0,"%s is an slocate database.  Turning on the \'-e\' option.",5)" ( number_literal , (string_literal ""%s is an slocate database.  Turning on the \'-e\' option."" " string_content escape_sequence string_content escape_sequence string_content ") , number_literal )))) ;) (expression_statement "error(0,0,uVar16,uVar12);" (call_expression "error(0,0,uVar16,uVar12)" identifier (argument_list "(0,0,uVar16,uVar12)" ( number_literal , number_literal , identifier , identifier ))) ;) (expression_statement "local_cd4 = 1;" (assignment_expression "local_cd4 = 1" identifier = number_literal) ;) })) })) (expression_statement "FUN_001039a8(FUN_00103e3d,0);" (call_expression "FUN_001039a8(FUN_00103e3d,0)" identifier (argument_list "(FUN_00103e3d,0)" ( identifier , number_literal ))) ;) (expression_statement "local_ca8 = local_cc8;" (assignment_expression "local_ca8 = local_cc8" identifier = identifier) ;) (expression_statement "local_ca0 = "slocate";" (assignment_expression "local_ca0 = "slocate"" identifier = (string_literal ""slocate"" " string_content ")) ;) (expression_statement "local_cac = 1;" (assignment_expression "local_cac = 1" identifier = number_literal) ;) (goto_statement "goto LAB_0010543a;" goto statement_identifier ;) })) (expression_statement "uVar12 = FUN_0010ca58(0,8,local_b98);" (assignment_expression "uVar12 = FUN_0010ca58(0,8,local_b98)" identifier = (call_expression "FUN_0010ca58(0,8,local_b98)" identifier (argument_list "(0,8,local_b98)" ( number_literal , number_literal , identifier )))) ;) (expression_statement "uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);" (assignment_expression "uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5)" identifier = (call_expression "dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5)" identifier (argument_list "(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5)" ( number_literal , (string_literal ""locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"" " string_content ") , number_literal )))) ;) (expression_statement "error(0,0,uVar16,uVar12,0);" (call_expression "error(0,0,uVar16,uVar12,0)" identifier (argument_list "(0,0,uVar16,uVar12,0)" ( number_literal , number_literal , identifier , identifier , number_literal ))) ;) (expression_statement "uVar12 = FUN_0010ca58(0,8,local_b98);" (assignment_expression "uVar12 = FUN_0010ca58(0,8,local_b98)" identifier = (call_expression "FUN_0010ca58(0,8,local_b98)" identifier (argument_list "(0,8,local_b98)" ( number_literal , number_literal , identifier )))) ;) (expression_statement "uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);" (assignment_expression "uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5)" identifier = (call_expression "dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5)" identifier (argument_list "(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5)" ( number_literal , (string_literal ""%s is an slocate database of unsupported security level %d; skipping it."" " string_content ") , number_literal )))) ;) (expression_statement "error(0,0,uVar16,uVar12,iVar23);" (call_expression "error(0,0,uVar16,uVar12,iVar23)" identifier (argument_list "(0,0,uVar16,uVar12,iVar23)" ( number_literal , number_literal , identifier , identifier , identifier ))) ;) (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;) }))) (labeled_statement "LAB_0010514b:\n    iVar3 = fclose(local_ce0);" statement_identifier : (expression_statement "iVar3 = fclose(local_ce0);" (assignment_expression "iVar3 = fclose(local_ce0)" identifier = (call_expression "fclose(local_ce0)" identifier (argument_list "(local_ce0)" ( identifier )))) ;)) (if_statement "if (iVar3 == -1) {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      goto LAB_0010468d;\n    }" if (parenthesized_expression "(iVar3 == -1)" ( (binary_expression "iVar3 == -1" identifier == number_literal) )) (compound_statement "{\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      goto LAB_0010468d;\n    }" { (expression_statement "uVar12 = FUN_0010ca58(0,8,local_cf8);" (assignment_expression "uVar12 = FUN_0010ca58(0,8,local_cf8)" identifier = (call_expression "FUN_0010ca58(0,8,local_cf8)" identifier (argument_list "(0,8,local_cf8)" ( number_literal , number_literal , identifier )))) ;) (expression_statement "piVar13 = __errno_location();" (assignment_expression "piVar13 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,*piVar13,&DAT_001207c7,uVar12);" (call_expression "error(0,*piVar13,&DAT_001207c7,uVar12)" identifier (argument_list "(0,*piVar13,&DAT_001207c7,uVar12)" ( number_literal , (pointer_expression "*piVar13" * identifier) , (pointer_expression "&DAT_001207c7" & identifier) , identifier ))) ;) (goto_statement "goto LAB_0010468d;" goto statement_identifier ;) })) (if_statement "if (local_cd0 != (char *)0x0) {\n      free(local_cd0);\n    }" if (parenthesized_expression "(local_cd0 != (char *)0x0)" ( (binary_expression "local_cd0 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      free(local_cd0);\n    }" { (expression_statement "free(local_cd0);" (call_expression "free(local_cd0)" identifier (argument_list "(local_cd0)" ( identifier ))) ;) })) (if_statement "if ((local_d00 == (char *)0x0) ||\n       (cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0')) break;" if (parenthesized_expression "((local_d00 == (char *)0x0) ||\n       (cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0'))" ( (binary_expression "(local_d00 == (char *)0x0) ||\n       (cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0')" (parenthesized_expression "(local_d00 == (char *)0x0)" ( (binary_expression "local_d00 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0')" ( (comma_expression "cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0'" (assignment_expression "cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78)" identifier = (call_expression "FUN_001063f9(local_d00,":",0,&local_c80,&local_c78)" identifier (argument_list "(local_d00,":",0,&local_c80,&local_c78)" ( identifier , (string_literal "":"" " string_content ") , number_literal , (pointer_expression "&local_c80" & identifier) , (pointer_expression "&local_c78" & identifier) )))) , (binary_expression "cVar2 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence '))) ))) )) (break_statement "break;" break ;)) })) (if_statement "if (local_c94 != 0) {\n    __printf_chk(1,&DAT_0011ea67,uVar6);\n  }" if (parenthesized_expression "(local_c94 != 0)" ( (binary_expression "local_c94 != 0" identifier != number_literal) )) (compound_statement "{\n    __printf_chk(1,&DAT_0011ea67,uVar6);\n  }" { (expression_statement "__printf_chk(1,&DAT_0011ea67,uVar6);" (call_expression "__printf_chk(1,&DAT_0011ea67,uVar6)" identifier (argument_list "(1,&DAT_0011ea67,uVar6)" ( number_literal , (pointer_expression "&DAT_0011ea67" & identifier) , identifier ))) ;) })) (if_statement "if ((uVar6 == 0) && ((local_cd8 == 0 || (DAT_00126270 != 0)))) {\n    local_cc8 = (uint)(local_cec == 0);\n  }" if (parenthesized_expression "((uVar6 == 0) && ((local_cd8 == 0 || (DAT_00126270 != 0))))" ( (binary_expression "(uVar6 == 0) && ((local_cd8 == 0 || (DAT_00126270 != 0)))" (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) && (parenthesized_expression "((local_cd8 == 0 || (DAT_00126270 != 0)))" ( (parenthesized_expression "(local_cd8 == 0 || (DAT_00126270 != 0))" ( (binary_expression "local_cd8 == 0 || (DAT_00126270 != 0)" (binary_expression "local_cd8 == 0" identifier == number_literal) || (parenthesized_expression "(DAT_00126270 != 0)" ( (binary_expression "DAT_00126270 != 0" identifier != number_literal) ))) )) ))) )) (compound_statement "{\n    local_cc8 = (uint)(local_cec == 0);\n  }" { (expression_statement "local_cc8 = (uint)(local_cec == 0);" (assignment_expression "local_cc8 = (uint)(local_cec == 0)" identifier = (call_expression "(uint)(local_cec == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_cec == 0)" ( (binary_expression "local_cec == 0" identifier == number_literal) )))) ;) })) (labeled_statement "LAB_0010468d:\n  if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n    __stack_chk_fail();\n  }" statement_identifier : (if_statement "if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n    __stack_chk_fail();\n  }" if (parenthesized_expression "(local_40 != *(long *)(in_FS_OFFSET + 0x28))" ( (binary_expression "local_40 != *(long *)(in_FS_OFFSET + 0x28)" identifier != (pointer_expression "*(long *)(in_FS_OFFSET + 0x28)" * (cast_expression "(long *)(in_FS_OFFSET + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_FS_OFFSET + 0x28)" ( (binary_expression "in_FS_OFFSET + 0x28" identifier + number_literal) ))))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    __stack_chk_fail();\n  }" { comment (expression_statement "__stack_chk_fail();" (call_expression "__stack_chk_fail()" identifier (argument_list "()" ( ))) ;) }))) (return_statement "return (ulong)local_cc8;" return (cast_expression "(ulong)local_cc8" ( (type_descriptor "ulong" type_identifier) ) identifier) ;) })))
(translation_unit "/* WARNING: Removing unreachable block (ram,0x00105539) */\n/* WARNING: Removing unreachable block (ram,0x00105514) */\n/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */\n\nint dolocate(int argc,char **argv,int secure_db_fd)\n\n{\n  char cVar1;\n  long lVar2;\n  bool bVar3;\n  uint uVar4;\n  ExistenceCheckType EVar5;\n  visitor *pvVar6;\n  _Bool _Var7;\n  int iVar8;\n  uint uVar9;\n  uint uVar10;\n  time_t tVar11;\n  undefined8 uVar12;\n  re_pattern_buffer *bufp;\n  re_dfa_t *prVar13;\n  char *pcVar14;\n  char *pcVar15;\n  int *piVar16;\n  size_t sVar17;\n  ushort **ppuVar18;\n  undefined8 uVar19;\n  tm *__tp;\n  undefined8 uVar20;\n  char *pcVar21;\n  char *pcVar22;\n  size_t sVar23;\n  undefined *puVar24;\n  uintmax_t uVar25;\n  int iVar26;\n  int *unaff_RBP;\n  ulong uVar27;\n  code *fn;\n  int unaff_R12D;\n  char **ppcVar28;\n  int unaff_R15D;\n  long in_FS_OFFSET;\n  byte bVar29;\n  double dVar30;\n  int local_d04;\n  char *local_d00;\n  char *local_cf8;\n  uint local_cf0;\n  int local_cec;\n  double local_ce8;\n  FILE *local_ce0;\n  uint local_cd8;\n  ExistenceCheckType local_cd4;\n  char *local_cd0;\n  uint local_cc8;\n  int local_cc4;\n  char **local_cc0;\n  uintmax_t local_cb8;\n  int local_cb0;\n  uint local_cac;\n  uint local_ca8;\n  uint local_ca4;\n  char *local_ca0;\n  int local_c98;\n  int local_c94;\n  size_t path_element_pos;\n  size_t path_element_len;\n  int opti;\n  undefined4 uStack_c6c;\n  char *end;\n  __syscall_slong_t local_c60;\n  stat st;\n  process_data procdata;\n  char hbuf1 [652];\n  char hbuf2 [652];\n  char hbuf3 [652];\n  char hbuf4 [652];\n  \n  bVar29 = 0;\n  lVar2 = *(long *)(in_FS_OFFSET + 0x28);\n  if (*argv == (char *)0x0) {\n    set_program_name("locate");\n  }\n  else {\n    set_program_name(*argv);\n  }\n  setlocale(6,"");\n  bindtextdomain("findutils","/usr/share/locale");\n  textdomain("findutils");\n  quote_opts = clone_quoting_options((quoting_options *)0x0);\n  iVar8 = atexit(close_stdout);\n  if ((iVar8 == 0) && (local_cc8 = atexit(cleanup_quote_opts), local_cc8 == 0)) {\n    limits.limit = 0;\n    limits.items_accepted = 0;\n    print_quoted_filename = true;\n    local_d00 = getenv("LOCATE_PATH");\n    check_existence = ACCEPT_EITHER;\n    unaff_RBP = &opti;\n    puVar24 = &DAT_0011eb4c;\n    local_d04 = 0;\n    local_cf0 = 0;\n    local_cec = 0;\n    local_cc4 = 0;\n    local_cb0 = 0;\n    local_c98 = 0;\n    local_c94 = 0;\n    unaff_R15D = 0;\n    local_cd8 = local_cc8;\n  }\n  else {\n    puVar24 = (undefined *)dcgettext(0,"The atexit library function failed",5);\n    piVar16 = __errno_location();\n    error(1,*piVar16,puVar24);\n    local_c98 = unaff_R12D;\n  }\n  opti = -1;\n  iVar8 = getopt_long(argc,argv,"Abcd:eEil:prsm0SwHPL",longopts,unaff_RBP);\n  if (iVar8 != -1) {\n    if (0x51 < iVar8 - 0x30U) {\n                    /* WARNING: Subroutine does not return */\n      usage(1);\n    }\n                    /* WARNING: Could not recover jumptable at 0x00104479. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    iVar8 = (*(code *)(puVar24 + *(int *)(puVar24 + (ulong)(iVar8 - 0x30U) * 4)))();\n    return iVar8;\n  }\n  local_ca4 = secure_db_fd;\n  if ((-1 < secure_db_fd) && (local_ca4 = secure_db_fd, local_d00 != (char *)0x0)) {\n    close(secure_db_fd);\n    local_ca4 = 0xffffffff;\n  }\n  if (local_c94 == 0 && local_cec == 0) {\n    if (optind == argc) {\n      uVar20 = dcgettext(0,"pattern argument expected",5);\n      error(0,0,uVar20);\n                    /* WARNING: Subroutine does not return */\n      usage(1);\n    }\n    local_cb0 = 1;\n  }\n  else if ((local_cec != 0) && (optind == argc)) {\n    local_cd8 = local_cc8;\n  }\n  iVar8 = isatty(1);\n  stdout_is_a_tty = iVar8 == 1;\n  if (local_d00 != (char *)0x0) {\n    splitstring(local_d00,":",true,&path_element_pos,&path_element_len);\n  }\n  uVar9 = local_cf0 | 0x400000;\n  if (unaff_R15D == 0) {\n    uVar9 = local_cf0;\n  }\n  bVar3 = false;\n  uVar25 = 0;\n  while ((local_cd8 == 0 || (limits.items_accepted < limits.limit))) {\n    statistics.highbit_filename_count = 0;\n    statistics.newline_count = 0;\n    statistics.whitespace_count = 0;\n    statistics.total_filename_length = 0;\n    statistics.total_filename_count = 0;\n    statistics.compressed_bytes = 0;\n    if (local_d00 == (char *)0x0) {\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = selected_secure_db;\n      local_cd0 = local_d00;\n      uVar10 = local_ca4;\n      local_ca4 = 0xffffffff;\n    }\n    else {\n      if (path_element_len == 1) {\n        if (local_d00[path_element_pos] == '-') {\n          if (!bVar3) {\n            bVar3 = true;\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar10 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar20 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar20);\n          goto LAB_0010468d;\n        }\n        if (local_d00[path_element_pos] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (path_element_len != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + path_element_pos,path_element_len);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar10 = opendb(local_cf8);\n      if ((int)uVar10 < 0) {\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        goto LAB_0010468d;\n      }\n    }\nLAB_00105254:\n    iVar8 = __fxstat(1,uVar10,(stat *)&st);\n    if (iVar8 == 0) {\n      local_cb8 = st.st_size;\n      end = (char *)st.st_mtim.tv_sec;\n      local_c60 = st.st_mtim.tv_nsec;\n      tVar11 = time((time_t *)&opti);\n      if (tVar11 == -1) {\n        uVar20 = dcgettext(0,"time system call failed",5);\n        piVar16 = __errno_location();\n        error(0,*piVar16,uVar20);\n      }\n      else {\n        dVar30 = difftime(CONCAT44(uStack_c6c,opti),st.st_mtim.tv_sec);\n        uVar4 = warn_number_units;\n        if ((double)(warn_number_units * 0x15180) < dVar30) {\n          uVar20 = dcgettext(0,"days",5);\n          uVar19 = dcgettext(0,"days",5);\n          pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n          uVar12 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar30 / _DAT_0011ed98,0,0,uVar12,pcVar15,uVar4,uVar19,uVar20);\n        }\n      }\n      local_ce0 = fdopen(uVar10,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &end;\n    }\n    else {\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n      piVar16 = __errno_location();\n      error(0,*piVar16,&DAT_001207c7,pcVar15);\n      local_ce0 = fdopen(uVar10,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (char **)0x0;\n    }\n    EVar5 = check_existence;\n    uVar10 = optind;\n    pcVar14 = (char *)(ulong)optind;\n    iVar8 = argc - optind;\n    local_cd4 = check_existence;\n    procdata.endian_state = GetwordEndianStateInitial;\n    procdata.count = 0;\n    procdata.len = 0;\n    procdata.dbfile = local_cf8;\n    procdata.fp = (FILE *)local_ce0;\n    inspectors = (visitor *)0x0;\n    lastinspector = (visitor *)0x0;\n    past_pat_inspector = (visitor *)0x0;\n    results_were_filtered = false;\n    procdata.pathsize = 0x80;\n    procdata.original_filename = (char *)xmalloc(0x80);\n    sVar17 = fread(procdata.original_filename,1,2,(FILE *)procdata.fp);\n    pcVar15 = procdata.original_filename;\n    uVar27 = (ulong)(int)sVar17;\n    if (2 < uVar27) {\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }\n    if ((uVar27 < 2) || (procdata.original_filename[1] != '\0')) {\nLAB_00105aa4:\n      extend(&procdata,10,0);\n      sVar23 = fread(procdata.original_filename + uVar27,1,10 - uVar27,(FILE *)procdata.fp);\n      iVar26 = (int)sVar17 + (int)sVar23;\n      if (((ulong)(long)iVar26 < 10) ||\n         (local_ca8 = memcmp(procdata.original_filename,&DAT_0011eb40,10), local_ca8 != 0)) {\n        extend(&procdata,0x100,0);\n        if ((0xff < iVar26) ||\n           (sVar17 = fread(procdata.original_filename + iVar26,1,(long)(0x100 - iVar26),\n                           (FILE *)procdata.fp), iVar26 + (int)sVar17 == 0x100)) {\n          pcVar15 = procdata.bigram1;\n          pcVar21 = procdata.original_filename;\n          do {\n            *pcVar15 = *pcVar21;\n            pcVar15[0x80] = pcVar21[1];\n            pcVar21 = pcVar21 + 2;\n            pcVar15 = pcVar15 + 1;\n          } while (pcVar15 != procdata.bigram2);\n          add_visitor(visit_old_format,(void *)0x0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        pcVar14 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        uVar20 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar20,pcVar14);\nLAB_00104daa:\n        uVar10 = (uint)pcVar14;\n        add_visitor(visit_basename,(void *)0x0);\n      }\n      else {\n        add_visitor(visit_locate02_format,(void *)0x0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar8) {\n        ppcVar28 = argv + (int)uVar10;\n        do {\n          results_were_filtered = true;\n          pcVar15 = *ppcVar28;\n          if (local_d04 == 0) {\n            pcVar14 = strpbrk(pcVar15,"*?[]\\");\n            if (pcVar14 == (char *)0x0) {\n              sVar17 = __ctype_get_mb_cur_max();\n              if (sVar17 == 1) {\n                fn = visit_substring_match_nocasefold_narrow;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_narrow;\n                }\n              }\n              else {\n                fn = visit_substring_match_nocasefold_wide;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_wide;\n                }\n              }\n              add_visitor(fn,pcVar15);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              add_visitor(visit_globmatch_casefold,pcVar15);\n            }\n          }\n          else {\n            bufp = (re_pattern_buffer *)xmalloc(0x40);\n            bufp->buffer = (re_dfa_t *)0x0;\n            bufp->allocated = 0;\n            bufp->used = 0;\n            bufp->syntax = 0;\n            bufp->fastmap = (char *)0x0;\n            bufp->translate = (uchar *)0x0;\n            bufp->re_nsub = 0;\n            *(undefined8 *)&bufp->field_0x38 = 0;\n            rpl_re_set_syntax((long)(int)uVar9);\n            bufp->allocated = 100;\n            prVar13 = (re_dfa_t *)xmalloc(100);\n            bufp->buffer = prVar13;\n            bufp->fastmap = (char *)0x0;\n            bufp->syntax = (long)(int)uVar9;\n            bufp->translate = (uchar *)0x0;\n            uVar27 = 0xffffffffffffffff;\n            pcVar14 = pcVar15;\n            do {\n              if (uVar27 == 0) break;\n              uVar27 = uVar27 - 1;\n              cVar1 = *pcVar14;\n              pcVar14 = pcVar14 + (ulong)bVar29 * -2 + 1;\n            } while (cVar1 != '\0');\n            pcVar14 = rpl_re_compile_pattern(pcVar15,~uVar27 - 1,bufp);\n            if (pcVar14 == (char *)0x0) {\n              add_visitor(visit_regex,bufp);\n            }\n            else {\n              error(1,0,&DAT_001207c7,pcVar14);\nLAB_00104ee7:\n              add_visitor(visit_globmatch_nofold,pcVar15);\n            }\n          }\n          ppcVar28 = ppcVar28 + 1;\n        } while (ppcVar28 != argv + (long)(int)uVar10 + (ulong)(iVar8 - 1) + 1);\n      }\n      pvVar6 = lastinspector;\n      if (local_cd4 == ACCEPT_EXISTING) {\n        results_were_filtered = true;\n        if (follow_symlinks == 0) {\n          add_visitor(visit_existing_nofollow,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_existing_follow,(void *)0x0);\n        }\n      }\n      else if (local_cd4 == ACCEPT_NON_EXISTING) {\n        results_were_filtered = true;\n        if (follow_symlinks == 0) {\n          add_visitor(visit_non_existing_nofollow,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_non_existing_follow,(void *)0x0);\n        }\n      }\n      if (local_cec != 0) {\n        add_visitor(visit_stats,&statistics);\n      }\n      if (local_cb0 != 0) {\n        if (print_quoted_filename == false) {\n          add_visitor(visit_justprint_unquoted,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_justprint_quoted,(void *)0x0);\n        }\n      }\n      if (local_cd8 == 0) {\n        add_visitor(visit_count,&limits);\n      }\n      else {\n        add_visitor(visit_limit,&limits);\n      }\n      pcVar15 = procdata.dbfile;\n      if (iVar8 < 2) {\n        mainprocessor = process_simple;\n      }\n      else {\n        past_pat_inspector = pvVar6->next;\n        if (local_c98 == 0) {\n          mainprocessor = process_or;\n        }\n        else {\n          mainprocessor = process_and;\n        }\n      }\n      if (local_cec != 0) {\n        uVar20 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar20,pcVar15,local_ca0);\n      }\n      procdata.c = getc((FILE *)procdata.fp);\n      if ((procdata.c != -1) && (local_cac != 0)) {\n        ungetc(procdata.c,(FILE *)procdata.fp);\n        procdata.c = 0;\n      }\n      do {\n        if (procdata.c == -1) break;\n        iVar26 = (*mainprocessor)(&procdata);\n      } while (iVar26 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar20 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar19 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (procdata.endian_state == GetwordEndianStateNative) {\n            __printf_chk(1,&DAT_001207c7,uVar20);\n          }\n          else if (procdata.endian_state == GetwordEndianStateSwab) {\n            __printf_chk(1,&DAT_001207c7,uVar19);\n          }\n          else {\n            uVar20 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar20);\n          }\n        }\n        if (local_cc0 != (char **)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (char **)0x0) &&\n             (__tp = localtime((time_t *)local_cc0), __tp != (tm *)0x0)) {\n            sVar17 = strftime(hbuf4,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar17 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (hbuf4[0x13] != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (hbuf4[0x12] == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            pcVar15 = local_cc0[1];\n            uVar20 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar20,hbuf4,pcVar15);\n            sVar17 = strftime(hbuf4,0x14,"%z",__tp);\n            if (sVar17 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",hbuf4);\n          }\n          pcVar15 = human_readable(local_cb8,hbuf1,0,1,1);\n          uVar20 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar20,pcVar15);\n          pcVar15 = human_readable(statistics.total_filename_count,hbuf1,0,1,1);\n          if (results_were_filtered == false) {\n            uVar20 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar20 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar20,pcVar15);\n          pcVar15 = human_readable(statistics.highbit_filename_count,hbuf4,0,1,1);\n          pcVar14 = human_readable(statistics.newline_count,hbuf3,0,1,1);\n          pcVar21 = human_readable(statistics.whitespace_count,hbuf2,0,1,1);\n          pcVar22 = human_readable(statistics.total_filename_length,hbuf1,0,1,1);\n          uVar20 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar20,pcVar22,pcVar21,pcVar14,pcVar15);\n          if (iVar8 == 0) {\n            if (results_were_filtered == false) {\n              if (statistics.total_filename_length == 0) {\n                uVar20 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar20);\n              }\n              else {\n                local_ce8 = (double)statistics.total_filename_length;\n                uVar20 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar20)\n                ;\n              }\n            }\n            else {\n              uVar20 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar20);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar8 = ferror((FILE *)procdata.fp);\n      uVar25 = limits.items_accepted;\n      if (iVar8 != 0) {\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        uVar25 = 0;\n      }\n    }\n    else {\n      ppuVar18 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar18 + (ulong)(byte)*pcVar15 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar26 = *pcVar15 + -0x30;\n      if (iVar26 < 2) {\n        if (iVar26 == 1) {\n          if (check_existence == ACCEPT_NON_EXISTING) {\n            uVar20 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar20);\n            uVar25 = 0;\n            goto LAB_0010514b;\n          }\n          if ((EVar5 != ACCEPT_EXISTING) &&\n             (local_cd4 = ACCEPT_EXISTING, local_cb0 != 0 || local_cec != 0)) {\n            pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n            uVar20 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar20,pcVar15);\n            local_cd4 = ACCEPT_EXISTING;\n          }\n        }\n        add_visitor(visit_locate02_format,(void *)0x0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n      uVar20 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar20,pcVar15,0);\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n      uVar20 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar20,pcVar15,iVar26);\n      uVar25 = 0;\n    }\nLAB_0010514b:\n    iVar8 = fclose(local_ce0);\n    if (iVar8 == -1) {\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n      piVar16 = __errno_location();\n      error(0,*piVar16,&DAT_001207c7,pcVar15);\n      goto LAB_0010468d;\n    }\n    if (local_cd0 != (char *)0x0) {\n      free(local_cd0);\n    }\n    if ((local_d00 == (char *)0x0) ||\n       (_Var7 = splitstring(local_d00,":",false,&path_element_pos,&path_element_len), !_Var7))\n    break;\n  }\n  if (local_c94 != 0) {\n    __printf_chk(1,&DAT_0011ea67,uVar25);\n  }\n  if ((uVar25 == 0) && ((local_cd8 == 0 || (limits.limit != 0)))) {\n    local_cc8 = (uint)(local_cec == 0);\n  }\nLAB_0010468d:\n  if (lVar2 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n    __stack_chk_fail();\n  }\n  return local_cc8;\n}\n\n" comment comment comment (function_definition "int dolocate(int argc,char **argv,int secure_db_fd)\n\n{\n  char cVar1;\n  long lVar2;\n  bool bVar3;\n  uint uVar4;\n  ExistenceCheckType EVar5;\n  visitor *pvVar6;\n  _Bool _Var7;\n  int iVar8;\n  uint uVar9;\n  uint uVar10;\n  time_t tVar11;\n  undefined8 uVar12;\n  re_pattern_buffer *bufp;\n  re_dfa_t *prVar13;\n  char *pcVar14;\n  char *pcVar15;\n  int *piVar16;\n  size_t sVar17;\n  ushort **ppuVar18;\n  undefined8 uVar19;\n  tm *__tp;\n  undefined8 uVar20;\n  char *pcVar21;\n  char *pcVar22;\n  size_t sVar23;\n  undefined *puVar24;\n  uintmax_t uVar25;\n  int iVar26;\n  int *unaff_RBP;\n  ulong uVar27;\n  code *fn;\n  int unaff_R12D;\n  char **ppcVar28;\n  int unaff_R15D;\n  long in_FS_OFFSET;\n  byte bVar29;\n  double dVar30;\n  int local_d04;\n  char *local_d00;\n  char *local_cf8;\n  uint local_cf0;\n  int local_cec;\n  double local_ce8;\n  FILE *local_ce0;\n  uint local_cd8;\n  ExistenceCheckType local_cd4;\n  char *local_cd0;\n  uint local_cc8;\n  int local_cc4;\n  char **local_cc0;\n  uintmax_t local_cb8;\n  int local_cb0;\n  uint local_cac;\n  uint local_ca8;\n  uint local_ca4;\n  char *local_ca0;\n  int local_c98;\n  int local_c94;\n  size_t path_element_pos;\n  size_t path_element_len;\n  int opti;\n  undefined4 uStack_c6c;\n  char *end;\n  __syscall_slong_t local_c60;\n  stat st;\n  process_data procdata;\n  char hbuf1 [652];\n  char hbuf2 [652];\n  char hbuf3 [652];\n  char hbuf4 [652];\n  \n  bVar29 = 0;\n  lVar2 = *(long *)(in_FS_OFFSET + 0x28);\n  if (*argv == (char *)0x0) {\n    set_program_name("locate");\n  }\n  else {\n    set_program_name(*argv);\n  }\n  setlocale(6,"");\n  bindtextdomain("findutils","/usr/share/locale");\n  textdomain("findutils");\n  quote_opts = clone_quoting_options((quoting_options *)0x0);\n  iVar8 = atexit(close_stdout);\n  if ((iVar8 == 0) && (local_cc8 = atexit(cleanup_quote_opts), local_cc8 == 0)) {\n    limits.limit = 0;\n    limits.items_accepted = 0;\n    print_quoted_filename = true;\n    local_d00 = getenv("LOCATE_PATH");\n    check_existence = ACCEPT_EITHER;\n    unaff_RBP = &opti;\n    puVar24 = &DAT_0011eb4c;\n    local_d04 = 0;\n    local_cf0 = 0;\n    local_cec = 0;\n    local_cc4 = 0;\n    local_cb0 = 0;\n    local_c98 = 0;\n    local_c94 = 0;\n    unaff_R15D = 0;\n    local_cd8 = local_cc8;\n  }\n  else {\n    puVar24 = (undefined *)dcgettext(0,"The atexit library function failed",5);\n    piVar16 = __errno_location();\n    error(1,*piVar16,puVar24);\n    local_c98 = unaff_R12D;\n  }\n  opti = -1;\n  iVar8 = getopt_long(argc,argv,"Abcd:eEil:prsm0SwHPL",longopts,unaff_RBP);\n  if (iVar8 != -1) {\n    if (0x51 < iVar8 - 0x30U) {\n                    /* WARNING: Subroutine does not return */\n      usage(1);\n    }\n                    /* WARNING: Could not recover jumptable at 0x00104479. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    iVar8 = (*(code *)(puVar24 + *(int *)(puVar24 + (ulong)(iVar8 - 0x30U) * 4)))();\n    return iVar8;\n  }\n  local_ca4 = secure_db_fd;\n  if ((-1 < secure_db_fd) && (local_ca4 = secure_db_fd, local_d00 != (char *)0x0)) {\n    close(secure_db_fd);\n    local_ca4 = 0xffffffff;\n  }\n  if (local_c94 == 0 && local_cec == 0) {\n    if (optind == argc) {\n      uVar20 = dcgettext(0,"pattern argument expected",5);\n      error(0,0,uVar20);\n                    /* WARNING: Subroutine does not return */\n      usage(1);\n    }\n    local_cb0 = 1;\n  }\n  else if ((local_cec != 0) && (optind == argc)) {\n    local_cd8 = local_cc8;\n  }\n  iVar8 = isatty(1);\n  stdout_is_a_tty = iVar8 == 1;\n  if (local_d00 != (char *)0x0) {\n    splitstring(local_d00,":",true,&path_element_pos,&path_element_len);\n  }\n  uVar9 = local_cf0 | 0x400000;\n  if (unaff_R15D == 0) {\n    uVar9 = local_cf0;\n  }\n  bVar3 = false;\n  uVar25 = 0;\n  while ((local_cd8 == 0 || (limits.items_accepted < limits.limit))) {\n    statistics.highbit_filename_count = 0;\n    statistics.newline_count = 0;\n    statistics.whitespace_count = 0;\n    statistics.total_filename_length = 0;\n    statistics.total_filename_count = 0;\n    statistics.compressed_bytes = 0;\n    if (local_d00 == (char *)0x0) {\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = selected_secure_db;\n      local_cd0 = local_d00;\n      uVar10 = local_ca4;\n      local_ca4 = 0xffffffff;\n    }\n    else {\n      if (path_element_len == 1) {\n        if (local_d00[path_element_pos] == '-') {\n          if (!bVar3) {\n            bVar3 = true;\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar10 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar20 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar20);\n          goto LAB_0010468d;\n        }\n        if (local_d00[path_element_pos] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (path_element_len != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + path_element_pos,path_element_len);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar10 = opendb(local_cf8);\n      if ((int)uVar10 < 0) {\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        goto LAB_0010468d;\n      }\n    }\nLAB_00105254:\n    iVar8 = __fxstat(1,uVar10,(stat *)&st);\n    if (iVar8 == 0) {\n      local_cb8 = st.st_size;\n      end = (char *)st.st_mtim.tv_sec;\n      local_c60 = st.st_mtim.tv_nsec;\n      tVar11 = time((time_t *)&opti);\n      if (tVar11 == -1) {\n        uVar20 = dcgettext(0,"time system call failed",5);\n        piVar16 = __errno_location();\n        error(0,*piVar16,uVar20);\n      }\n      else {\n        dVar30 = difftime(CONCAT44(uStack_c6c,opti),st.st_mtim.tv_sec);\n        uVar4 = warn_number_units;\n        if ((double)(warn_number_units * 0x15180) < dVar30) {\n          uVar20 = dcgettext(0,"days",5);\n          uVar19 = dcgettext(0,"days",5);\n          pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n          uVar12 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar30 / _DAT_0011ed98,0,0,uVar12,pcVar15,uVar4,uVar19,uVar20);\n        }\n      }\n      local_ce0 = fdopen(uVar10,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &end;\n    }\n    else {\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n      piVar16 = __errno_location();\n      error(0,*piVar16,&DAT_001207c7,pcVar15);\n      local_ce0 = fdopen(uVar10,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (char **)0x0;\n    }\n    EVar5 = check_existence;\n    uVar10 = optind;\n    pcVar14 = (char *)(ulong)optind;\n    iVar8 = argc - optind;\n    local_cd4 = check_existence;\n    procdata.endian_state = GetwordEndianStateInitial;\n    procdata.count = 0;\n    procdata.len = 0;\n    procdata.dbfile = local_cf8;\n    procdata.fp = (FILE *)local_ce0;\n    inspectors = (visitor *)0x0;\n    lastinspector = (visitor *)0x0;\n    past_pat_inspector = (visitor *)0x0;\n    results_were_filtered = false;\n    procdata.pathsize = 0x80;\n    procdata.original_filename = (char *)xmalloc(0x80);\n    sVar17 = fread(procdata.original_filename,1,2,(FILE *)procdata.fp);\n    pcVar15 = procdata.original_filename;\n    uVar27 = (ulong)(int)sVar17;\n    if (2 < uVar27) {\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }\n    if ((uVar27 < 2) || (procdata.original_filename[1] != '\0')) {\nLAB_00105aa4:\n      extend(&procdata,10,0);\n      sVar23 = fread(procdata.original_filename + uVar27,1,10 - uVar27,(FILE *)procdata.fp);\n      iVar26 = (int)sVar17 + (int)sVar23;\n      if (((ulong)(long)iVar26 < 10) ||\n         (local_ca8 = memcmp(procdata.original_filename,&DAT_0011eb40,10), local_ca8 != 0)) {\n        extend(&procdata,0x100,0);\n        if ((0xff < iVar26) ||\n           (sVar17 = fread(procdata.original_filename + iVar26,1,(long)(0x100 - iVar26),\n                           (FILE *)procdata.fp), iVar26 + (int)sVar17 == 0x100)) {\n          pcVar15 = procdata.bigram1;\n          pcVar21 = procdata.original_filename;\n          do {\n            *pcVar15 = *pcVar21;\n            pcVar15[0x80] = pcVar21[1];\n            pcVar21 = pcVar21 + 2;\n            pcVar15 = pcVar15 + 1;\n          } while (pcVar15 != procdata.bigram2);\n          add_visitor(visit_old_format,(void *)0x0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        pcVar14 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        uVar20 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar20,pcVar14);\nLAB_00104daa:\n        uVar10 = (uint)pcVar14;\n        add_visitor(visit_basename,(void *)0x0);\n      }\n      else {\n        add_visitor(visit_locate02_format,(void *)0x0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar8) {\n        ppcVar28 = argv + (int)uVar10;\n        do {\n          results_were_filtered = true;\n          pcVar15 = *ppcVar28;\n          if (local_d04 == 0) {\n            pcVar14 = strpbrk(pcVar15,"*?[]\\");\n            if (pcVar14 == (char *)0x0) {\n              sVar17 = __ctype_get_mb_cur_max();\n              if (sVar17 == 1) {\n                fn = visit_substring_match_nocasefold_narrow;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_narrow;\n                }\n              }\n              else {\n                fn = visit_substring_match_nocasefold_wide;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_wide;\n                }\n              }\n              add_visitor(fn,pcVar15);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              add_visitor(visit_globmatch_casefold,pcVar15);\n            }\n          }\n          else {\n            bufp = (re_pattern_buffer *)xmalloc(0x40);\n            bufp->buffer = (re_dfa_t *)0x0;\n            bufp->allocated = 0;\n            bufp->used = 0;\n            bufp->syntax = 0;\n            bufp->fastmap = (char *)0x0;\n            bufp->translate = (uchar *)0x0;\n            bufp->re_nsub = 0;\n            *(undefined8 *)&bufp->field_0x38 = 0;\n            rpl_re_set_syntax((long)(int)uVar9);\n            bufp->allocated = 100;\n            prVar13 = (re_dfa_t *)xmalloc(100);\n            bufp->buffer = prVar13;\n            bufp->fastmap = (char *)0x0;\n            bufp->syntax = (long)(int)uVar9;\n            bufp->translate = (uchar *)0x0;\n            uVar27 = 0xffffffffffffffff;\n            pcVar14 = pcVar15;\n            do {\n              if (uVar27 == 0) break;\n              uVar27 = uVar27 - 1;\n              cVar1 = *pcVar14;\n              pcVar14 = pcVar14 + (ulong)bVar29 * -2 + 1;\n            } while (cVar1 != '\0');\n            pcVar14 = rpl_re_compile_pattern(pcVar15,~uVar27 - 1,bufp);\n            if (pcVar14 == (char *)0x0) {\n              add_visitor(visit_regex,bufp);\n            }\n            else {\n              error(1,0,&DAT_001207c7,pcVar14);\nLAB_00104ee7:\n              add_visitor(visit_globmatch_nofold,pcVar15);\n            }\n          }\n          ppcVar28 = ppcVar28 + 1;\n        } while (ppcVar28 != argv + (long)(int)uVar10 + (ulong)(iVar8 - 1) + 1);\n      }\n      pvVar6 = lastinspector;\n      if (local_cd4 == ACCEPT_EXISTING) {\n        results_were_filtered = true;\n        if (follow_symlinks == 0) {\n          add_visitor(visit_existing_nofollow,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_existing_follow,(void *)0x0);\n        }\n      }\n      else if (local_cd4 == ACCEPT_NON_EXISTING) {\n        results_were_filtered = true;\n        if (follow_symlinks == 0) {\n          add_visitor(visit_non_existing_nofollow,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_non_existing_follow,(void *)0x0);\n        }\n      }\n      if (local_cec != 0) {\n        add_visitor(visit_stats,&statistics);\n      }\n      if (local_cb0 != 0) {\n        if (print_quoted_filename == false) {\n          add_visitor(visit_justprint_unquoted,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_justprint_quoted,(void *)0x0);\n        }\n      }\n      if (local_cd8 == 0) {\n        add_visitor(visit_count,&limits);\n      }\n      else {\n        add_visitor(visit_limit,&limits);\n      }\n      pcVar15 = procdata.dbfile;\n      if (iVar8 < 2) {\n        mainprocessor = process_simple;\n      }\n      else {\n        past_pat_inspector = pvVar6->next;\n        if (local_c98 == 0) {\n          mainprocessor = process_or;\n        }\n        else {\n          mainprocessor = process_and;\n        }\n      }\n      if (local_cec != 0) {\n        uVar20 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar20,pcVar15,local_ca0);\n      }\n      procdata.c = getc((FILE *)procdata.fp);\n      if ((procdata.c != -1) && (local_cac != 0)) {\n        ungetc(procdata.c,(FILE *)procdata.fp);\n        procdata.c = 0;\n      }\n      do {\n        if (procdata.c == -1) break;\n        iVar26 = (*mainprocessor)(&procdata);\n      } while (iVar26 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar20 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar19 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (procdata.endian_state == GetwordEndianStateNative) {\n            __printf_chk(1,&DAT_001207c7,uVar20);\n          }\n          else if (procdata.endian_state == GetwordEndianStateSwab) {\n            __printf_chk(1,&DAT_001207c7,uVar19);\n          }\n          else {\n            uVar20 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar20);\n          }\n        }\n        if (local_cc0 != (char **)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (char **)0x0) &&\n             (__tp = localtime((time_t *)local_cc0), __tp != (tm *)0x0)) {\n            sVar17 = strftime(hbuf4,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar17 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (hbuf4[0x13] != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (hbuf4[0x12] == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            pcVar15 = local_cc0[1];\n            uVar20 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar20,hbuf4,pcVar15);\n            sVar17 = strftime(hbuf4,0x14,"%z",__tp);\n            if (sVar17 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",hbuf4);\n          }\n          pcVar15 = human_readable(local_cb8,hbuf1,0,1,1);\n          uVar20 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar20,pcVar15);\n          pcVar15 = human_readable(statistics.total_filename_count,hbuf1,0,1,1);\n          if (results_were_filtered == false) {\n            uVar20 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar20 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar20,pcVar15);\n          pcVar15 = human_readable(statistics.highbit_filename_count,hbuf4,0,1,1);\n          pcVar14 = human_readable(statistics.newline_count,hbuf3,0,1,1);\n          pcVar21 = human_readable(statistics.whitespace_count,hbuf2,0,1,1);\n          pcVar22 = human_readable(statistics.total_filename_length,hbuf1,0,1,1);\n          uVar20 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar20,pcVar22,pcVar21,pcVar14,pcVar15);\n          if (iVar8 == 0) {\n            if (results_were_filtered == false) {\n              if (statistics.total_filename_length == 0) {\n                uVar20 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar20);\n              }\n              else {\n                local_ce8 = (double)statistics.total_filename_length;\n                uVar20 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar20)\n                ;\n              }\n            }\n            else {\n              uVar20 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar20);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar8 = ferror((FILE *)procdata.fp);\n      uVar25 = limits.items_accepted;\n      if (iVar8 != 0) {\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        uVar25 = 0;\n      }\n    }\n    else {\n      ppuVar18 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar18 + (ulong)(byte)*pcVar15 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar26 = *pcVar15 + -0x30;\n      if (iVar26 < 2) {\n        if (iVar26 == 1) {\n          if (check_existence == ACCEPT_NON_EXISTING) {\n            uVar20 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar20);\n            uVar25 = 0;\n            goto LAB_0010514b;\n          }\n          if ((EVar5 != ACCEPT_EXISTING) &&\n             (local_cd4 = ACCEPT_EXISTING, local_cb0 != 0 || local_cec != 0)) {\n            pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n            uVar20 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar20,pcVar15);\n            local_cd4 = ACCEPT_EXISTING;\n          }\n        }\n        add_visitor(visit_locate02_format,(void *)0x0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n      uVar20 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar20,pcVar15,0);\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n      uVar20 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar20,pcVar15,iVar26);\n      uVar25 = 0;\n    }\nLAB_0010514b:\n    iVar8 = fclose(local_ce0);\n    if (iVar8 == -1) {\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n      piVar16 = __errno_location();\n      error(0,*piVar16,&DAT_001207c7,pcVar15);\n      goto LAB_0010468d;\n    }\n    if (local_cd0 != (char *)0x0) {\n      free(local_cd0);\n    }\n    if ((local_d00 == (char *)0x0) ||\n       (_Var7 = splitstring(local_d00,":",false,&path_element_pos,&path_element_len), !_Var7))\n    break;\n  }\n  if (local_c94 != 0) {\n    __printf_chk(1,&DAT_0011ea67,uVar25);\n  }\n  if ((uVar25 == 0) && ((local_cd8 == 0 || (limits.limit != 0)))) {\n    local_cc8 = (uint)(local_cec == 0);\n  }\nLAB_0010468d:\n  if (lVar2 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n    __stack_chk_fail();\n  }\n  return local_cc8;\n}" primitive_type (function_declarator "dolocate(int argc,char **argv,int secure_db_fd)" identifier (parameter_list "(int argc,char **argv,int secure_db_fd)" ( (parameter_declaration "int argc" primitive_type identifier) , (parameter_declaration "char **argv" primitive_type (pointer_declarator "**argv" * (pointer_declarator "*argv" * identifier))) , (parameter_declaration "int secure_db_fd" primitive_type identifier) ))) (compound_statement "{\n  char cVar1;\n  long lVar2;\n  bool bVar3;\n  uint uVar4;\n  ExistenceCheckType EVar5;\n  visitor *pvVar6;\n  _Bool _Var7;\n  int iVar8;\n  uint uVar9;\n  uint uVar10;\n  time_t tVar11;\n  undefined8 uVar12;\n  re_pattern_buffer *bufp;\n  re_dfa_t *prVar13;\n  char *pcVar14;\n  char *pcVar15;\n  int *piVar16;\n  size_t sVar17;\n  ushort **ppuVar18;\n  undefined8 uVar19;\n  tm *__tp;\n  undefined8 uVar20;\n  char *pcVar21;\n  char *pcVar22;\n  size_t sVar23;\n  undefined *puVar24;\n  uintmax_t uVar25;\n  int iVar26;\n  int *unaff_RBP;\n  ulong uVar27;\n  code *fn;\n  int unaff_R12D;\n  char **ppcVar28;\n  int unaff_R15D;\n  long in_FS_OFFSET;\n  byte bVar29;\n  double dVar30;\n  int local_d04;\n  char *local_d00;\n  char *local_cf8;\n  uint local_cf0;\n  int local_cec;\n  double local_ce8;\n  FILE *local_ce0;\n  uint local_cd8;\n  ExistenceCheckType local_cd4;\n  char *local_cd0;\n  uint local_cc8;\n  int local_cc4;\n  char **local_cc0;\n  uintmax_t local_cb8;\n  int local_cb0;\n  uint local_cac;\n  uint local_ca8;\n  uint local_ca4;\n  char *local_ca0;\n  int local_c98;\n  int local_c94;\n  size_t path_element_pos;\n  size_t path_element_len;\n  int opti;\n  undefined4 uStack_c6c;\n  char *end;\n  __syscall_slong_t local_c60;\n  stat st;\n  process_data procdata;\n  char hbuf1 [652];\n  char hbuf2 [652];\n  char hbuf3 [652];\n  char hbuf4 [652];\n  \n  bVar29 = 0;\n  lVar2 = *(long *)(in_FS_OFFSET + 0x28);\n  if (*argv == (char *)0x0) {\n    set_program_name("locate");\n  }\n  else {\n    set_program_name(*argv);\n  }\n  setlocale(6,"");\n  bindtextdomain("findutils","/usr/share/locale");\n  textdomain("findutils");\n  quote_opts = clone_quoting_options((quoting_options *)0x0);\n  iVar8 = atexit(close_stdout);\n  if ((iVar8 == 0) && (local_cc8 = atexit(cleanup_quote_opts), local_cc8 == 0)) {\n    limits.limit = 0;\n    limits.items_accepted = 0;\n    print_quoted_filename = true;\n    local_d00 = getenv("LOCATE_PATH");\n    check_existence = ACCEPT_EITHER;\n    unaff_RBP = &opti;\n    puVar24 = &DAT_0011eb4c;\n    local_d04 = 0;\n    local_cf0 = 0;\n    local_cec = 0;\n    local_cc4 = 0;\n    local_cb0 = 0;\n    local_c98 = 0;\n    local_c94 = 0;\n    unaff_R15D = 0;\n    local_cd8 = local_cc8;\n  }\n  else {\n    puVar24 = (undefined *)dcgettext(0,"The atexit library function failed",5);\n    piVar16 = __errno_location();\n    error(1,*piVar16,puVar24);\n    local_c98 = unaff_R12D;\n  }\n  opti = -1;\n  iVar8 = getopt_long(argc,argv,"Abcd:eEil:prsm0SwHPL",longopts,unaff_RBP);\n  if (iVar8 != -1) {\n    if (0x51 < iVar8 - 0x30U) {\n                    /* WARNING: Subroutine does not return */\n      usage(1);\n    }\n                    /* WARNING: Could not recover jumptable at 0x00104479. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    iVar8 = (*(code *)(puVar24 + *(int *)(puVar24 + (ulong)(iVar8 - 0x30U) * 4)))();\n    return iVar8;\n  }\n  local_ca4 = secure_db_fd;\n  if ((-1 < secure_db_fd) && (local_ca4 = secure_db_fd, local_d00 != (char *)0x0)) {\n    close(secure_db_fd);\n    local_ca4 = 0xffffffff;\n  }\n  if (local_c94 == 0 && local_cec == 0) {\n    if (optind == argc) {\n      uVar20 = dcgettext(0,"pattern argument expected",5);\n      error(0,0,uVar20);\n                    /* WARNING: Subroutine does not return */\n      usage(1);\n    }\n    local_cb0 = 1;\n  }\n  else if ((local_cec != 0) && (optind == argc)) {\n    local_cd8 = local_cc8;\n  }\n  iVar8 = isatty(1);\n  stdout_is_a_tty = iVar8 == 1;\n  if (local_d00 != (char *)0x0) {\n    splitstring(local_d00,":",true,&path_element_pos,&path_element_len);\n  }\n  uVar9 = local_cf0 | 0x400000;\n  if (unaff_R15D == 0) {\n    uVar9 = local_cf0;\n  }\n  bVar3 = false;\n  uVar25 = 0;\n  while ((local_cd8 == 0 || (limits.items_accepted < limits.limit))) {\n    statistics.highbit_filename_count = 0;\n    statistics.newline_count = 0;\n    statistics.whitespace_count = 0;\n    statistics.total_filename_length = 0;\n    statistics.total_filename_count = 0;\n    statistics.compressed_bytes = 0;\n    if (local_d00 == (char *)0x0) {\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = selected_secure_db;\n      local_cd0 = local_d00;\n      uVar10 = local_ca4;\n      local_ca4 = 0xffffffff;\n    }\n    else {\n      if (path_element_len == 1) {\n        if (local_d00[path_element_pos] == '-') {\n          if (!bVar3) {\n            bVar3 = true;\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar10 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar20 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar20);\n          goto LAB_0010468d;\n        }\n        if (local_d00[path_element_pos] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (path_element_len != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + path_element_pos,path_element_len);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar10 = opendb(local_cf8);\n      if ((int)uVar10 < 0) {\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        goto LAB_0010468d;\n      }\n    }\nLAB_00105254:\n    iVar8 = __fxstat(1,uVar10,(stat *)&st);\n    if (iVar8 == 0) {\n      local_cb8 = st.st_size;\n      end = (char *)st.st_mtim.tv_sec;\n      local_c60 = st.st_mtim.tv_nsec;\n      tVar11 = time((time_t *)&opti);\n      if (tVar11 == -1) {\n        uVar20 = dcgettext(0,"time system call failed",5);\n        piVar16 = __errno_location();\n        error(0,*piVar16,uVar20);\n      }\n      else {\n        dVar30 = difftime(CONCAT44(uStack_c6c,opti),st.st_mtim.tv_sec);\n        uVar4 = warn_number_units;\n        if ((double)(warn_number_units * 0x15180) < dVar30) {\n          uVar20 = dcgettext(0,"days",5);\n          uVar19 = dcgettext(0,"days",5);\n          pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n          uVar12 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar30 / _DAT_0011ed98,0,0,uVar12,pcVar15,uVar4,uVar19,uVar20);\n        }\n      }\n      local_ce0 = fdopen(uVar10,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &end;\n    }\n    else {\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n      piVar16 = __errno_location();\n      error(0,*piVar16,&DAT_001207c7,pcVar15);\n      local_ce0 = fdopen(uVar10,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (char **)0x0;\n    }\n    EVar5 = check_existence;\n    uVar10 = optind;\n    pcVar14 = (char *)(ulong)optind;\n    iVar8 = argc - optind;\n    local_cd4 = check_existence;\n    procdata.endian_state = GetwordEndianStateInitial;\n    procdata.count = 0;\n    procdata.len = 0;\n    procdata.dbfile = local_cf8;\n    procdata.fp = (FILE *)local_ce0;\n    inspectors = (visitor *)0x0;\n    lastinspector = (visitor *)0x0;\n    past_pat_inspector = (visitor *)0x0;\n    results_were_filtered = false;\n    procdata.pathsize = 0x80;\n    procdata.original_filename = (char *)xmalloc(0x80);\n    sVar17 = fread(procdata.original_filename,1,2,(FILE *)procdata.fp);\n    pcVar15 = procdata.original_filename;\n    uVar27 = (ulong)(int)sVar17;\n    if (2 < uVar27) {\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }\n    if ((uVar27 < 2) || (procdata.original_filename[1] != '\0')) {\nLAB_00105aa4:\n      extend(&procdata,10,0);\n      sVar23 = fread(procdata.original_filename + uVar27,1,10 - uVar27,(FILE *)procdata.fp);\n      iVar26 = (int)sVar17 + (int)sVar23;\n      if (((ulong)(long)iVar26 < 10) ||\n         (local_ca8 = memcmp(procdata.original_filename,&DAT_0011eb40,10), local_ca8 != 0)) {\n        extend(&procdata,0x100,0);\n        if ((0xff < iVar26) ||\n           (sVar17 = fread(procdata.original_filename + iVar26,1,(long)(0x100 - iVar26),\n                           (FILE *)procdata.fp), iVar26 + (int)sVar17 == 0x100)) {\n          pcVar15 = procdata.bigram1;\n          pcVar21 = procdata.original_filename;\n          do {\n            *pcVar15 = *pcVar21;\n            pcVar15[0x80] = pcVar21[1];\n            pcVar21 = pcVar21 + 2;\n            pcVar15 = pcVar15 + 1;\n          } while (pcVar15 != procdata.bigram2);\n          add_visitor(visit_old_format,(void *)0x0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        pcVar14 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        uVar20 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar20,pcVar14);\nLAB_00104daa:\n        uVar10 = (uint)pcVar14;\n        add_visitor(visit_basename,(void *)0x0);\n      }\n      else {\n        add_visitor(visit_locate02_format,(void *)0x0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar8) {\n        ppcVar28 = argv + (int)uVar10;\n        do {\n          results_were_filtered = true;\n          pcVar15 = *ppcVar28;\n          if (local_d04 == 0) {\n            pcVar14 = strpbrk(pcVar15,"*?[]\\");\n            if (pcVar14 == (char *)0x0) {\n              sVar17 = __ctype_get_mb_cur_max();\n              if (sVar17 == 1) {\n                fn = visit_substring_match_nocasefold_narrow;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_narrow;\n                }\n              }\n              else {\n                fn = visit_substring_match_nocasefold_wide;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_wide;\n                }\n              }\n              add_visitor(fn,pcVar15);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              add_visitor(visit_globmatch_casefold,pcVar15);\n            }\n          }\n          else {\n            bufp = (re_pattern_buffer *)xmalloc(0x40);\n            bufp->buffer = (re_dfa_t *)0x0;\n            bufp->allocated = 0;\n            bufp->used = 0;\n            bufp->syntax = 0;\n            bufp->fastmap = (char *)0x0;\n            bufp->translate = (uchar *)0x0;\n            bufp->re_nsub = 0;\n            *(undefined8 *)&bufp->field_0x38 = 0;\n            rpl_re_set_syntax((long)(int)uVar9);\n            bufp->allocated = 100;\n            prVar13 = (re_dfa_t *)xmalloc(100);\n            bufp->buffer = prVar13;\n            bufp->fastmap = (char *)0x0;\n            bufp->syntax = (long)(int)uVar9;\n            bufp->translate = (uchar *)0x0;\n            uVar27 = 0xffffffffffffffff;\n            pcVar14 = pcVar15;\n            do {\n              if (uVar27 == 0) break;\n              uVar27 = uVar27 - 1;\n              cVar1 = *pcVar14;\n              pcVar14 = pcVar14 + (ulong)bVar29 * -2 + 1;\n            } while (cVar1 != '\0');\n            pcVar14 = rpl_re_compile_pattern(pcVar15,~uVar27 - 1,bufp);\n            if (pcVar14 == (char *)0x0) {\n              add_visitor(visit_regex,bufp);\n            }\n            else {\n              error(1,0,&DAT_001207c7,pcVar14);\nLAB_00104ee7:\n              add_visitor(visit_globmatch_nofold,pcVar15);\n            }\n          }\n          ppcVar28 = ppcVar28 + 1;\n        } while (ppcVar28 != argv + (long)(int)uVar10 + (ulong)(iVar8 - 1) + 1);\n      }\n      pvVar6 = lastinspector;\n      if (local_cd4 == ACCEPT_EXISTING) {\n        results_were_filtered = true;\n        if (follow_symlinks == 0) {\n          add_visitor(visit_existing_nofollow,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_existing_follow,(void *)0x0);\n        }\n      }\n      else if (local_cd4 == ACCEPT_NON_EXISTING) {\n        results_were_filtered = true;\n        if (follow_symlinks == 0) {\n          add_visitor(visit_non_existing_nofollow,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_non_existing_follow,(void *)0x0);\n        }\n      }\n      if (local_cec != 0) {\n        add_visitor(visit_stats,&statistics);\n      }\n      if (local_cb0 != 0) {\n        if (print_quoted_filename == false) {\n          add_visitor(visit_justprint_unquoted,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_justprint_quoted,(void *)0x0);\n        }\n      }\n      if (local_cd8 == 0) {\n        add_visitor(visit_count,&limits);\n      }\n      else {\n        add_visitor(visit_limit,&limits);\n      }\n      pcVar15 = procdata.dbfile;\n      if (iVar8 < 2) {\n        mainprocessor = process_simple;\n      }\n      else {\n        past_pat_inspector = pvVar6->next;\n        if (local_c98 == 0) {\n          mainprocessor = process_or;\n        }\n        else {\n          mainprocessor = process_and;\n        }\n      }\n      if (local_cec != 0) {\n        uVar20 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar20,pcVar15,local_ca0);\n      }\n      procdata.c = getc((FILE *)procdata.fp);\n      if ((procdata.c != -1) && (local_cac != 0)) {\n        ungetc(procdata.c,(FILE *)procdata.fp);\n        procdata.c = 0;\n      }\n      do {\n        if (procdata.c == -1) break;\n        iVar26 = (*mainprocessor)(&procdata);\n      } while (iVar26 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar20 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar19 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (procdata.endian_state == GetwordEndianStateNative) {\n            __printf_chk(1,&DAT_001207c7,uVar20);\n          }\n          else if (procdata.endian_state == GetwordEndianStateSwab) {\n            __printf_chk(1,&DAT_001207c7,uVar19);\n          }\n          else {\n            uVar20 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar20);\n          }\n        }\n        if (local_cc0 != (char **)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (char **)0x0) &&\n             (__tp = localtime((time_t *)local_cc0), __tp != (tm *)0x0)) {\n            sVar17 = strftime(hbuf4,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar17 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (hbuf4[0x13] != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (hbuf4[0x12] == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            pcVar15 = local_cc0[1];\n            uVar20 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar20,hbuf4,pcVar15);\n            sVar17 = strftime(hbuf4,0x14,"%z",__tp);\n            if (sVar17 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",hbuf4);\n          }\n          pcVar15 = human_readable(local_cb8,hbuf1,0,1,1);\n          uVar20 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar20,pcVar15);\n          pcVar15 = human_readable(statistics.total_filename_count,hbuf1,0,1,1);\n          if (results_were_filtered == false) {\n            uVar20 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar20 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar20,pcVar15);\n          pcVar15 = human_readable(statistics.highbit_filename_count,hbuf4,0,1,1);\n          pcVar14 = human_readable(statistics.newline_count,hbuf3,0,1,1);\n          pcVar21 = human_readable(statistics.whitespace_count,hbuf2,0,1,1);\n          pcVar22 = human_readable(statistics.total_filename_length,hbuf1,0,1,1);\n          uVar20 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar20,pcVar22,pcVar21,pcVar14,pcVar15);\n          if (iVar8 == 0) {\n            if (results_were_filtered == false) {\n              if (statistics.total_filename_length == 0) {\n                uVar20 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar20);\n              }\n              else {\n                local_ce8 = (double)statistics.total_filename_length;\n                uVar20 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar20)\n                ;\n              }\n            }\n            else {\n              uVar20 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar20);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar8 = ferror((FILE *)procdata.fp);\n      uVar25 = limits.items_accepted;\n      if (iVar8 != 0) {\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        uVar25 = 0;\n      }\n    }\n    else {\n      ppuVar18 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar18 + (ulong)(byte)*pcVar15 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar26 = *pcVar15 + -0x30;\n      if (iVar26 < 2) {\n        if (iVar26 == 1) {\n          if (check_existence == ACCEPT_NON_EXISTING) {\n            uVar20 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar20);\n            uVar25 = 0;\n            goto LAB_0010514b;\n          }\n          if ((EVar5 != ACCEPT_EXISTING) &&\n             (local_cd4 = ACCEPT_EXISTING, local_cb0 != 0 || local_cec != 0)) {\n            pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n            uVar20 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar20,pcVar15);\n            local_cd4 = ACCEPT_EXISTING;\n          }\n        }\n        add_visitor(visit_locate02_format,(void *)0x0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n      uVar20 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar20,pcVar15,0);\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n      uVar20 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar20,pcVar15,iVar26);\n      uVar25 = 0;\n    }\nLAB_0010514b:\n    iVar8 = fclose(local_ce0);\n    if (iVar8 == -1) {\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n      piVar16 = __errno_location();\n      error(0,*piVar16,&DAT_001207c7,pcVar15);\n      goto LAB_0010468d;\n    }\n    if (local_cd0 != (char *)0x0) {\n      free(local_cd0);\n    }\n    if ((local_d00 == (char *)0x0) ||\n       (_Var7 = splitstring(local_d00,":",false,&path_element_pos,&path_element_len), !_Var7))\n    break;\n  }\n  if (local_c94 != 0) {\n    __printf_chk(1,&DAT_0011ea67,uVar25);\n  }\n  if ((uVar25 == 0) && ((local_cd8 == 0 || (limits.limit != 0)))) {\n    local_cc8 = (uint)(local_cec == 0);\n  }\nLAB_0010468d:\n  if (lVar2 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n    __stack_chk_fail();\n  }\n  return local_cc8;\n}" { (declaration "char cVar1;" primitive_type identifier ;) (declaration "long lVar2;" (sized_type_specifier "long" long) identifier ;) (declaration "bool bVar3;" primitive_type identifier ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "ExistenceCheckType EVar5;" type_identifier identifier ;) (declaration "visitor *pvVar6;" type_identifier (pointer_declarator "*pvVar6" * identifier) ;) (declaration "_Bool _Var7;" type_identifier identifier ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "uint uVar9;" type_identifier identifier ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "time_t tVar11;" type_identifier identifier ;) (declaration "undefined8 uVar12;" type_identifier identifier ;) (declaration "re_pattern_buffer *bufp;" type_identifier (pointer_declarator "*bufp" * identifier) ;) (declaration "re_dfa_t *prVar13;" type_identifier (pointer_declarator "*prVar13" * identifier) ;) (declaration "char *pcVar14;" primitive_type (pointer_declarator "*pcVar14" * identifier) ;) (declaration "char *pcVar15;" primitive_type (pointer_declarator "*pcVar15" * identifier) ;) (declaration "int *piVar16;" primitive_type (pointer_declarator "*piVar16" * identifier) ;) (declaration "size_t sVar17;" primitive_type identifier ;) (declaration "ushort **ppuVar18;" type_identifier (pointer_declarator "**ppuVar18" * (pointer_declarator "*ppuVar18" * identifier)) ;) (declaration "undefined8 uVar19;" type_identifier identifier ;) (declaration "tm *__tp;" type_identifier (pointer_declarator "*__tp" * identifier) ;) (declaration "undefined8 uVar20;" type_identifier identifier ;) (declaration "char *pcVar21;" primitive_type (pointer_declarator "*pcVar21" * identifier) ;) (declaration "char *pcVar22;" primitive_type (pointer_declarator "*pcVar22" * identifier) ;) (declaration "size_t sVar23;" primitive_type identifier ;) (declaration "undefined *puVar24;" type_identifier (pointer_declarator "*puVar24" * identifier) ;) (declaration "uintmax_t uVar25;" type_identifier identifier ;) (declaration "int iVar26;" primitive_type identifier ;) (declaration "int *unaff_RBP;" primitive_type (pointer_declarator "*unaff_RBP" * identifier) ;) (declaration "ulong uVar27;" type_identifier identifier ;) (declaration "code *fn;" type_identifier (pointer_declarator "*fn" * identifier) ;) (declaration "int unaff_R12D;" primitive_type identifier ;) (declaration "char **ppcVar28;" primitive_type (pointer_declarator "**ppcVar28" * (pointer_declarator "*ppcVar28" * identifier)) ;) (declaration "int unaff_R15D;" primitive_type identifier ;) (declaration "long in_FS_OFFSET;" (sized_type_specifier "long" long) identifier ;) (declaration "byte bVar29;" type_identifier identifier ;) (declaration "double dVar30;" primitive_type identifier ;) (declaration "int local_d04;" primitive_type identifier ;) (declaration "char *local_d00;" primitive_type (pointer_declarator "*local_d00" * identifier) ;) (declaration "char *local_cf8;" primitive_type (pointer_declarator "*local_cf8" * identifier) ;) (declaration "uint local_cf0;" type_identifier identifier ;) (declaration "int local_cec;" primitive_type identifier ;) (declaration "double local_ce8;" primitive_type identifier ;) (declaration "FILE *local_ce0;" type_identifier (pointer_declarator "*local_ce0" * identifier) ;) (declaration "uint local_cd8;" type_identifier identifier ;) (declaration "ExistenceCheckType local_cd4;" type_identifier identifier ;) (declaration "char *local_cd0;" primitive_type (pointer_declarator "*local_cd0" * identifier) ;) (declaration "uint local_cc8;" type_identifier identifier ;) (declaration "int local_cc4;" primitive_type identifier ;) (declaration "char **local_cc0;" primitive_type (pointer_declarator "**local_cc0" * (pointer_declarator "*local_cc0" * identifier)) ;) (declaration "uintmax_t local_cb8;" type_identifier identifier ;) (declaration "int local_cb0;" primitive_type identifier ;) (declaration "uint local_cac;" type_identifier identifier ;) (declaration "uint local_ca8;" type_identifier identifier ;) (declaration "uint local_ca4;" type_identifier identifier ;) (declaration "char *local_ca0;" primitive_type (pointer_declarator "*local_ca0" * identifier) ;) (declaration "int local_c98;" primitive_type identifier ;) (declaration "int local_c94;" primitive_type identifier ;) (declaration "size_t path_element_pos;" primitive_type identifier ;) (declaration "size_t path_element_len;" primitive_type identifier ;) (declaration "int opti;" primitive_type identifier ;) (declaration "undefined4 uStack_c6c;" type_identifier identifier ;) (declaration "char *end;" primitive_type (pointer_declarator "*end" * identifier) ;) (declaration "__syscall_slong_t local_c60;" type_identifier identifier ;) (declaration "stat st;" type_identifier identifier ;) (declaration "process_data procdata;" type_identifier identifier ;) (declaration "char hbuf1 [652];" primitive_type (array_declarator "hbuf1 [652]" identifier [ number_literal ]) ;) (declaration "char hbuf2 [652];" primitive_type (array_declarator "hbuf2 [652]" identifier [ number_literal ]) ;) (declaration "char hbuf3 [652];" primitive_type (array_declarator "hbuf3 [652]" identifier [ number_literal ]) ;) (declaration "char hbuf4 [652];" primitive_type (array_declarator "hbuf4 [652]" identifier [ number_literal ]) ;) (expression_statement "bVar29 = 0;" (assignment_expression "bVar29 = 0" identifier = number_literal) ;) (expression_statement "lVar2 = *(long *)(in_FS_OFFSET + 0x28);" (assignment_expression "lVar2 = *(long *)(in_FS_OFFSET + 0x28)" identifier = (pointer_expression "*(long *)(in_FS_OFFSET + 0x28)" * (cast_expression "(long *)(in_FS_OFFSET + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_FS_OFFSET + 0x28)" ( (binary_expression "in_FS_OFFSET + 0x28" identifier + number_literal) ))))) ;) (if_statement "if (*argv == (char *)0x0) {\n    set_program_name("locate");\n  }\n  else {\n    set_program_name(*argv);\n  }" if (parenthesized_expression "(*argv == (char *)0x0)" ( (binary_expression "*argv == (char *)0x0" (pointer_expression "*argv" * identifier) == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    set_program_name("locate");\n  }" { (expression_statement "set_program_name("locate");" (call_expression "set_program_name("locate")" identifier (argument_list "("locate")" ( (string_literal ""locate"" " string_content ") ))) ;) }) (else_clause "else {\n    set_program_name(*argv);\n  }" else (compound_statement "{\n    set_program_name(*argv);\n  }" { (expression_statement "set_program_name(*argv);" (call_expression "set_program_name(*argv)" identifier (argument_list "(*argv)" ( (pointer_expression "*argv" * identifier) ))) ;) }))) (expression_statement "setlocale(6,"");" (call_expression "setlocale(6,"")" identifier (argument_list "(6,"")" ( number_literal , (string_literal """" " ") ))) ;) (expression_statement "bindtextdomain("findutils","/usr/share/locale");" (call_expression "bindtextdomain("findutils","/usr/share/locale")" identifier (argument_list "("findutils","/usr/share/locale")" ( (string_literal ""findutils"" " string_content ") , (string_literal ""/usr/share/locale"" " string_content ") ))) ;) (expression_statement "textdomain("findutils");" (call_expression "textdomain("findutils")" identifier (argument_list "("findutils")" ( (string_literal ""findutils"" " string_content ") ))) ;) (expression_statement "quote_opts = clone_quoting_options((quoting_options *)0x0);" (assignment_expression "quote_opts = clone_quoting_options((quoting_options *)0x0)" identifier = (call_expression "clone_quoting_options((quoting_options *)0x0)" identifier (argument_list "((quoting_options *)0x0)" ( (cast_expression "(quoting_options *)0x0" ( (type_descriptor "quoting_options *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) )))) ;) (expression_statement "iVar8 = atexit(close_stdout);" (assignment_expression "iVar8 = atexit(close_stdout)" identifier = (call_expression "atexit(close_stdout)" identifier (argument_list "(close_stdout)" ( identifier )))) ;) (if_statement "if ((iVar8 == 0) && (local_cc8 = atexit(cleanup_quote_opts), local_cc8 == 0)) {\n    limits.limit = 0;\n    limits.items_accepted = 0;\n    print_quoted_filename = true;\n    local_d00 = getenv("LOCATE_PATH");\n    check_existence = ACCEPT_EITHER;\n    unaff_RBP = &opti;\n    puVar24 = &DAT_0011eb4c;\n    local_d04 = 0;\n    local_cf0 = 0;\n    local_cec = 0;\n    local_cc4 = 0;\n    local_cb0 = 0;\n    local_c98 = 0;\n    local_c94 = 0;\n    unaff_R15D = 0;\n    local_cd8 = local_cc8;\n  }\n  else {\n    puVar24 = (undefined *)dcgettext(0,"The atexit library function failed",5);\n    piVar16 = __errno_location();\n    error(1,*piVar16,puVar24);\n    local_c98 = unaff_R12D;\n  }" if (parenthesized_expression "((iVar8 == 0) && (local_cc8 = atexit(cleanup_quote_opts), local_cc8 == 0))" ( (binary_expression "(iVar8 == 0) && (local_cc8 = atexit(cleanup_quote_opts), local_cc8 == 0)" (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) && (parenthesized_expression "(local_cc8 = atexit(cleanup_quote_opts), local_cc8 == 0)" ( (comma_expression "local_cc8 = atexit(cleanup_quote_opts), local_cc8 == 0" (assignment_expression "local_cc8 = atexit(cleanup_quote_opts)" identifier = (call_expression "atexit(cleanup_quote_opts)" identifier (argument_list "(cleanup_quote_opts)" ( identifier )))) , (binary_expression "local_cc8 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n    limits.limit = 0;\n    limits.items_accepted = 0;\n    print_quoted_filename = true;\n    local_d00 = getenv("LOCATE_PATH");\n    check_existence = ACCEPT_EITHER;\n    unaff_RBP = &opti;\n    puVar24 = &DAT_0011eb4c;\n    local_d04 = 0;\n    local_cf0 = 0;\n    local_cec = 0;\n    local_cc4 = 0;\n    local_cb0 = 0;\n    local_c98 = 0;\n    local_c94 = 0;\n    unaff_R15D = 0;\n    local_cd8 = local_cc8;\n  }" { (expression_statement "limits.limit = 0;" (assignment_expression "limits.limit = 0" (field_expression "limits.limit" identifier . field_identifier) = number_literal) ;) (expression_statement "limits.items_accepted = 0;" (assignment_expression "limits.items_accepted = 0" (field_expression "limits.items_accepted" identifier . field_identifier) = number_literal) ;) (expression_statement "print_quoted_filename = true;" (assignment_expression "print_quoted_filename = true" identifier = true) ;) (expression_statement "local_d00 = getenv("LOCATE_PATH");" (assignment_expression "local_d00 = getenv("LOCATE_PATH")" identifier = (call_expression "getenv("LOCATE_PATH")" identifier (argument_list "("LOCATE_PATH")" ( (string_literal ""LOCATE_PATH"" " string_content ") )))) ;) (expression_statement "check_existence = ACCEPT_EITHER;" (assignment_expression "check_existence = ACCEPT_EITHER" identifier = identifier) ;) (expression_statement "unaff_RBP = &opti;" (assignment_expression "unaff_RBP = &opti" identifier = (pointer_expression "&opti" & identifier)) ;) (expression_statement "puVar24 = &DAT_0011eb4c;" (assignment_expression "puVar24 = &DAT_0011eb4c" identifier = (pointer_expression "&DAT_0011eb4c" & identifier)) ;) (expression_statement "local_d04 = 0;" (assignment_expression "local_d04 = 0" identifier = number_literal) ;) (expression_statement "local_cf0 = 0;" (assignment_expression "local_cf0 = 0" identifier = number_literal) ;) (expression_statement "local_cec = 0;" (assignment_expression "local_cec = 0" identifier = number_literal) ;) (expression_statement "local_cc4 = 0;" (assignment_expression "local_cc4 = 0" identifier = number_literal) ;) (expression_statement "local_cb0 = 0;" (assignment_expression "local_cb0 = 0" identifier = number_literal) ;) (expression_statement "local_c98 = 0;" (assignment_expression "local_c98 = 0" identifier = number_literal) ;) (expression_statement "local_c94 = 0;" (assignment_expression "local_c94 = 0" identifier = number_literal) ;) (expression_statement "unaff_R15D = 0;" (assignment_expression "unaff_R15D = 0" identifier = number_literal) ;) (expression_statement "local_cd8 = local_cc8;" (assignment_expression "local_cd8 = local_cc8" identifier = identifier) ;) }) (else_clause "else {\n    puVar24 = (undefined *)dcgettext(0,"The atexit library function failed",5);\n    piVar16 = __errno_location();\n    error(1,*piVar16,puVar24);\n    local_c98 = unaff_R12D;\n  }" else (compound_statement "{\n    puVar24 = (undefined *)dcgettext(0,"The atexit library function failed",5);\n    piVar16 = __errno_location();\n    error(1,*piVar16,puVar24);\n    local_c98 = unaff_R12D;\n  }" { (expression_statement "puVar24 = (undefined *)dcgettext(0,"The atexit library function failed",5);" (assignment_expression "puVar24 = (undefined *)dcgettext(0,"The atexit library function failed",5)" identifier = (cast_expression "(undefined *)dcgettext(0,"The atexit library function failed",5)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"The atexit library function failed",5)" identifier (argument_list "(0,"The atexit library function failed",5)" ( number_literal , (string_literal ""The atexit library function failed"" " string_content ") , number_literal ))))) ;) (expression_statement "piVar16 = __errno_location();" (assignment_expression "piVar16 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(1,*piVar16,puVar24);" (call_expression "error(1,*piVar16,puVar24)" identifier (argument_list "(1,*piVar16,puVar24)" ( number_literal , (pointer_expression "*piVar16" * identifier) , identifier ))) ;) (expression_statement "local_c98 = unaff_R12D;" (assignment_expression "local_c98 = unaff_R12D" identifier = identifier) ;) }))) (expression_statement "opti = -1;" (assignment_expression "opti = -1" identifier = number_literal) ;) (expression_statement "iVar8 = getopt_long(argc,argv,"Abcd:eEil:prsm0SwHPL",longopts,unaff_RBP);" (assignment_expression "iVar8 = getopt_long(argc,argv,"Abcd:eEil:prsm0SwHPL",longopts,unaff_RBP)" identifier = (call_expression "getopt_long(argc,argv,"Abcd:eEil:prsm0SwHPL",longopts,unaff_RBP)" identifier (argument_list "(argc,argv,"Abcd:eEil:prsm0SwHPL",longopts,unaff_RBP)" ( identifier , identifier , (string_literal ""Abcd:eEil:prsm0SwHPL"" " string_content ") , identifier , identifier )))) ;) (if_statement "if (iVar8 != -1) {\n    if (0x51 < iVar8 - 0x30U) {\n                    /* WARNING: Subroutine does not return */\n      usage(1);\n    }\n                    /* WARNING: Could not recover jumptable at 0x00104479. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    iVar8 = (*(code *)(puVar24 + *(int *)(puVar24 + (ulong)(iVar8 - 0x30U) * 4)))();\n    return iVar8;\n  }" if (parenthesized_expression "(iVar8 != -1)" ( (binary_expression "iVar8 != -1" identifier != number_literal) )) (compound_statement "{\n    if (0x51 < iVar8 - 0x30U) {\n                    /* WARNING: Subroutine does not return */\n      usage(1);\n    }\n                    /* WARNING: Could not recover jumptable at 0x00104479. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    iVar8 = (*(code *)(puVar24 + *(int *)(puVar24 + (ulong)(iVar8 - 0x30U) * 4)))();\n    return iVar8;\n  }" { (if_statement "if (0x51 < iVar8 - 0x30U) {\n                    /* WARNING: Subroutine does not return */\n      usage(1);\n    }" if (parenthesized_expression "(0x51 < iVar8 - 0x30U)" ( (binary_expression "0x51 < iVar8 - 0x30U" number_literal < (binary_expression "iVar8 - 0x30U" identifier - number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n      usage(1);\n    }" { comment (expression_statement "usage(1);" (call_expression "usage(1)" identifier (argument_list "(1)" ( number_literal ))) ;) })) comment comment (expression_statement "iVar8 = (*(code *)(puVar24 + *(int *)(puVar24 + (ulong)(iVar8 - 0x30U) * 4)))();" (assignment_expression "iVar8 = (*(code *)(puVar24 + *(int *)(puVar24 + (ulong)(iVar8 - 0x30U) * 4)))()" identifier = (call_expression "(*(code *)(puVar24 + *(int *)(puVar24 + (ulong)(iVar8 - 0x30U) * 4)))()" (parenthesized_expression "(*(code *)(puVar24 + *(int *)(puVar24 + (ulong)(iVar8 - 0x30U) * 4)))" ( (pointer_expression "*(code *)(puVar24 + *(int *)(puVar24 + (ulong)(iVar8 - 0x30U) * 4))" * (cast_expression "(code *)(puVar24 + *(int *)(puVar24 + (ulong)(iVar8 - 0x30U) * 4))" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + *(int *)(puVar24 + (ulong)(iVar8 - 0x30U) * 4))" ( (binary_expression "puVar24 + *(int *)(puVar24 + (ulong)(iVar8 - 0x30U) * 4)" identifier + (pointer_expression "*(int *)(puVar24 + (ulong)(iVar8 - 0x30U) * 4)" * (cast_expression "(int *)(puVar24 + (ulong)(iVar8 - 0x30U) * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + (ulong)(iVar8 - 0x30U) * 4)" ( (binary_expression "puVar24 + (ulong)(iVar8 - 0x30U) * 4" identifier + (binary_expression "(ulong)(iVar8 - 0x30U) * 4" (call_expression "(ulong)(iVar8 - 0x30U)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(iVar8 - 0x30U)" ( (binary_expression "iVar8 - 0x30U" identifier - number_literal) ))) * number_literal)) ))))) )))) )) (argument_list "()" ( )))) ;) (return_statement "return iVar8;" return identifier ;) })) (expression_statement "local_ca4 = secure_db_fd;" (assignment_expression "local_ca4 = secure_db_fd" identifier = identifier) ;) (if_statement "if ((-1 < secure_db_fd) && (local_ca4 = secure_db_fd, local_d00 != (char *)0x0)) {\n    close(secure_db_fd);\n    local_ca4 = 0xffffffff;\n  }" if (parenthesized_expression "((-1 < secure_db_fd) && (local_ca4 = secure_db_fd, local_d00 != (char *)0x0))" ( (binary_expression "(-1 < secure_db_fd) && (local_ca4 = secure_db_fd, local_d00 != (char *)0x0)" (parenthesized_expression "(-1 < secure_db_fd)" ( (binary_expression "-1 < secure_db_fd" number_literal < identifier) )) && (parenthesized_expression "(local_ca4 = secure_db_fd, local_d00 != (char *)0x0)" ( (comma_expression "local_ca4 = secure_db_fd, local_d00 != (char *)0x0" (assignment_expression "local_ca4 = secure_db_fd" identifier = identifier) , (binary_expression "local_d00 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal))) ))) )) (compound_statement "{\n    close(secure_db_fd);\n    local_ca4 = 0xffffffff;\n  }" { (expression_statement "close(secure_db_fd);" (call_expression "close(secure_db_fd)" identifier (argument_list "(secure_db_fd)" ( identifier ))) ;) (expression_statement "local_ca4 = 0xffffffff;" (assignment_expression "local_ca4 = 0xffffffff" identifier = number_literal) ;) })) (if_statement "if (local_c94 == 0 && local_cec == 0) {\n    if (optind == argc) {\n      uVar20 = dcgettext(0,"pattern argument expected",5);\n      error(0,0,uVar20);\n                    /* WARNING: Subroutine does not return */\n      usage(1);\n    }\n    local_cb0 = 1;\n  }\n  else if ((local_cec != 0) && (optind == argc)) {\n    local_cd8 = local_cc8;\n  }" if (parenthesized_expression "(local_c94 == 0 && local_cec == 0)" ( (binary_expression "local_c94 == 0 && local_cec == 0" (binary_expression "local_c94 == 0" identifier == number_literal) && (binary_expression "local_cec == 0" identifier == number_literal)) )) (compound_statement "{\n    if (optind == argc) {\n      uVar20 = dcgettext(0,"pattern argument expected",5);\n      error(0,0,uVar20);\n                    /* WARNING: Subroutine does not return */\n      usage(1);\n    }\n    local_cb0 = 1;\n  }" { (if_statement "if (optind == argc) {\n      uVar20 = dcgettext(0,"pattern argument expected",5);\n      error(0,0,uVar20);\n                    /* WARNING: Subroutine does not return */\n      usage(1);\n    }" if (parenthesized_expression "(optind == argc)" ( (binary_expression "optind == argc" identifier == identifier) )) (compound_statement "{\n      uVar20 = dcgettext(0,"pattern argument expected",5);\n      error(0,0,uVar20);\n                    /* WARNING: Subroutine does not return */\n      usage(1);\n    }" { (expression_statement "uVar20 = dcgettext(0,"pattern argument expected",5);" (assignment_expression "uVar20 = dcgettext(0,"pattern argument expected",5)" identifier = (call_expression "dcgettext(0,"pattern argument expected",5)" identifier (argument_list "(0,"pattern argument expected",5)" ( number_literal , (string_literal ""pattern argument expected"" " string_content ") , number_literal )))) ;) (expression_statement "error(0,0,uVar20);" (call_expression "error(0,0,uVar20)" identifier (argument_list "(0,0,uVar20)" ( number_literal , number_literal , identifier ))) ;) comment (expression_statement "usage(1);" (call_expression "usage(1)" identifier (argument_list "(1)" ( number_literal ))) ;) })) (expression_statement "local_cb0 = 1;" (assignment_expression "local_cb0 = 1" identifier = number_literal) ;) }) (else_clause "else if ((local_cec != 0) && (optind == argc)) {\n    local_cd8 = local_cc8;\n  }" else (if_statement "if ((local_cec != 0) && (optind == argc)) {\n    local_cd8 = local_cc8;\n  }" if (parenthesized_expression "((local_cec != 0) && (optind == argc))" ( (binary_expression "(local_cec != 0) && (optind == argc)" (parenthesized_expression "(local_cec != 0)" ( (binary_expression "local_cec != 0" identifier != number_literal) )) && (parenthesized_expression "(optind == argc)" ( (binary_expression "optind == argc" identifier == identifier) ))) )) (compound_statement "{\n    local_cd8 = local_cc8;\n  }" { (expression_statement "local_cd8 = local_cc8;" (assignment_expression "local_cd8 = local_cc8" identifier = identifier) ;) })))) (expression_statement "iVar8 = isatty(1);" (assignment_expression "iVar8 = isatty(1)" identifier = (call_expression "isatty(1)" identifier (argument_list "(1)" ( number_literal )))) ;) (expression_statement "stdout_is_a_tty = iVar8 == 1;" (assignment_expression "stdout_is_a_tty = iVar8 == 1" identifier = (binary_expression "iVar8 == 1" identifier == number_literal)) ;) (if_statement "if (local_d00 != (char *)0x0) {\n    splitstring(local_d00,":",true,&path_element_pos,&path_element_len);\n  }" if (parenthesized_expression "(local_d00 != (char *)0x0)" ( (binary_expression "local_d00 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    splitstring(local_d00,":",true,&path_element_pos,&path_element_len);\n  }" { (expression_statement "splitstring(local_d00,":",true,&path_element_pos,&path_element_len);" (call_expression "splitstring(local_d00,":",true,&path_element_pos,&path_element_len)" identifier (argument_list "(local_d00,":",true,&path_element_pos,&path_element_len)" ( identifier , (string_literal "":"" " string_content ") , true , (pointer_expression "&path_element_pos" & identifier) , (pointer_expression "&path_element_len" & identifier) ))) ;) })) (expression_statement "uVar9 = local_cf0 | 0x400000;" (assignment_expression "uVar9 = local_cf0 | 0x400000" identifier = (binary_expression "local_cf0 | 0x400000" identifier | number_literal)) ;) (if_statement "if (unaff_R15D == 0) {\n    uVar9 = local_cf0;\n  }" if (parenthesized_expression "(unaff_R15D == 0)" ( (binary_expression "unaff_R15D == 0" identifier == number_literal) )) (compound_statement "{\n    uVar9 = local_cf0;\n  }" { (expression_statement "uVar9 = local_cf0;" (assignment_expression "uVar9 = local_cf0" identifier = identifier) ;) })) (expression_statement "bVar3 = false;" (assignment_expression "bVar3 = false" identifier = false) ;) (expression_statement "uVar25 = 0;" (assignment_expression "uVar25 = 0" identifier = number_literal) ;) (while_statement "while ((local_cd8 == 0 || (limits.items_accepted < limits.limit))) {\n    statistics.highbit_filename_count = 0;\n    statistics.newline_count = 0;\n    statistics.whitespace_count = 0;\n    statistics.total_filename_length = 0;\n    statistics.total_filename_count = 0;\n    statistics.compressed_bytes = 0;\n    if (local_d00 == (char *)0x0) {\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = selected_secure_db;\n      local_cd0 = local_d00;\n      uVar10 = local_ca4;\n      local_ca4 = 0xffffffff;\n    }\n    else {\n      if (path_element_len == 1) {\n        if (local_d00[path_element_pos] == '-') {\n          if (!bVar3) {\n            bVar3 = true;\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar10 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar20 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar20);\n          goto LAB_0010468d;\n        }\n        if (local_d00[path_element_pos] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (path_element_len != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + path_element_pos,path_element_len);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar10 = opendb(local_cf8);\n      if ((int)uVar10 < 0) {\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        goto LAB_0010468d;\n      }\n    }\nLAB_00105254:\n    iVar8 = __fxstat(1,uVar10,(stat *)&st);\n    if (iVar8 == 0) {\n      local_cb8 = st.st_size;\n      end = (char *)st.st_mtim.tv_sec;\n      local_c60 = st.st_mtim.tv_nsec;\n      tVar11 = time((time_t *)&opti);\n      if (tVar11 == -1) {\n        uVar20 = dcgettext(0,"time system call failed",5);\n        piVar16 = __errno_location();\n        error(0,*piVar16,uVar20);\n      }\n      else {\n        dVar30 = difftime(CONCAT44(uStack_c6c,opti),st.st_mtim.tv_sec);\n        uVar4 = warn_number_units;\n        if ((double)(warn_number_units * 0x15180) < dVar30) {\n          uVar20 = dcgettext(0,"days",5);\n          uVar19 = dcgettext(0,"days",5);\n          pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n          uVar12 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar30 / _DAT_0011ed98,0,0,uVar12,pcVar15,uVar4,uVar19,uVar20);\n        }\n      }\n      local_ce0 = fdopen(uVar10,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &end;\n    }\n    else {\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n      piVar16 = __errno_location();\n      error(0,*piVar16,&DAT_001207c7,pcVar15);\n      local_ce0 = fdopen(uVar10,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (char **)0x0;\n    }\n    EVar5 = check_existence;\n    uVar10 = optind;\n    pcVar14 = (char *)(ulong)optind;\n    iVar8 = argc - optind;\n    local_cd4 = check_existence;\n    procdata.endian_state = GetwordEndianStateInitial;\n    procdata.count = 0;\n    procdata.len = 0;\n    procdata.dbfile = local_cf8;\n    procdata.fp = (FILE *)local_ce0;\n    inspectors = (visitor *)0x0;\n    lastinspector = (visitor *)0x0;\n    past_pat_inspector = (visitor *)0x0;\n    results_were_filtered = false;\n    procdata.pathsize = 0x80;\n    procdata.original_filename = (char *)xmalloc(0x80);\n    sVar17 = fread(procdata.original_filename,1,2,(FILE *)procdata.fp);\n    pcVar15 = procdata.original_filename;\n    uVar27 = (ulong)(int)sVar17;\n    if (2 < uVar27) {\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }\n    if ((uVar27 < 2) || (procdata.original_filename[1] != '\0')) {\nLAB_00105aa4:\n      extend(&procdata,10,0);\n      sVar23 = fread(procdata.original_filename + uVar27,1,10 - uVar27,(FILE *)procdata.fp);\n      iVar26 = (int)sVar17 + (int)sVar23;\n      if (((ulong)(long)iVar26 < 10) ||\n         (local_ca8 = memcmp(procdata.original_filename,&DAT_0011eb40,10), local_ca8 != 0)) {\n        extend(&procdata,0x100,0);\n        if ((0xff < iVar26) ||\n           (sVar17 = fread(procdata.original_filename + iVar26,1,(long)(0x100 - iVar26),\n                           (FILE *)procdata.fp), iVar26 + (int)sVar17 == 0x100)) {\n          pcVar15 = procdata.bigram1;\n          pcVar21 = procdata.original_filename;\n          do {\n            *pcVar15 = *pcVar21;\n            pcVar15[0x80] = pcVar21[1];\n            pcVar21 = pcVar21 + 2;\n            pcVar15 = pcVar15 + 1;\n          } while (pcVar15 != procdata.bigram2);\n          add_visitor(visit_old_format,(void *)0x0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        pcVar14 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        uVar20 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar20,pcVar14);\nLAB_00104daa:\n        uVar10 = (uint)pcVar14;\n        add_visitor(visit_basename,(void *)0x0);\n      }\n      else {\n        add_visitor(visit_locate02_format,(void *)0x0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar8) {\n        ppcVar28 = argv + (int)uVar10;\n        do {\n          results_were_filtered = true;\n          pcVar15 = *ppcVar28;\n          if (local_d04 == 0) {\n            pcVar14 = strpbrk(pcVar15,"*?[]\\");\n            if (pcVar14 == (char *)0x0) {\n              sVar17 = __ctype_get_mb_cur_max();\n              if (sVar17 == 1) {\n                fn = visit_substring_match_nocasefold_narrow;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_narrow;\n                }\n              }\n              else {\n                fn = visit_substring_match_nocasefold_wide;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_wide;\n                }\n              }\n              add_visitor(fn,pcVar15);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              add_visitor(visit_globmatch_casefold,pcVar15);\n            }\n          }\n          else {\n            bufp = (re_pattern_buffer *)xmalloc(0x40);\n            bufp->buffer = (re_dfa_t *)0x0;\n            bufp->allocated = 0;\n            bufp->used = 0;\n            bufp->syntax = 0;\n            bufp->fastmap = (char *)0x0;\n            bufp->translate = (uchar *)0x0;\n            bufp->re_nsub = 0;\n            *(undefined8 *)&bufp->field_0x38 = 0;\n            rpl_re_set_syntax((long)(int)uVar9);\n            bufp->allocated = 100;\n            prVar13 = (re_dfa_t *)xmalloc(100);\n            bufp->buffer = prVar13;\n            bufp->fastmap = (char *)0x0;\n            bufp->syntax = (long)(int)uVar9;\n            bufp->translate = (uchar *)0x0;\n            uVar27 = 0xffffffffffffffff;\n            pcVar14 = pcVar15;\n            do {\n              if (uVar27 == 0) break;\n              uVar27 = uVar27 - 1;\n              cVar1 = *pcVar14;\n              pcVar14 = pcVar14 + (ulong)bVar29 * -2 + 1;\n            } while (cVar1 != '\0');\n            pcVar14 = rpl_re_compile_pattern(pcVar15,~uVar27 - 1,bufp);\n            if (pcVar14 == (char *)0x0) {\n              add_visitor(visit_regex,bufp);\n            }\n            else {\n              error(1,0,&DAT_001207c7,pcVar14);\nLAB_00104ee7:\n              add_visitor(visit_globmatch_nofold,pcVar15);\n            }\n          }\n          ppcVar28 = ppcVar28 + 1;\n        } while (ppcVar28 != argv + (long)(int)uVar10 + (ulong)(iVar8 - 1) + 1);\n      }\n      pvVar6 = lastinspector;\n      if (local_cd4 == ACCEPT_EXISTING) {\n        results_were_filtered = true;\n        if (follow_symlinks == 0) {\n          add_visitor(visit_existing_nofollow,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_existing_follow,(void *)0x0);\n        }\n      }\n      else if (local_cd4 == ACCEPT_NON_EXISTING) {\n        results_were_filtered = true;\n        if (follow_symlinks == 0) {\n          add_visitor(visit_non_existing_nofollow,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_non_existing_follow,(void *)0x0);\n        }\n      }\n      if (local_cec != 0) {\n        add_visitor(visit_stats,&statistics);\n      }\n      if (local_cb0 != 0) {\n        if (print_quoted_filename == false) {\n          add_visitor(visit_justprint_unquoted,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_justprint_quoted,(void *)0x0);\n        }\n      }\n      if (local_cd8 == 0) {\n        add_visitor(visit_count,&limits);\n      }\n      else {\n        add_visitor(visit_limit,&limits);\n      }\n      pcVar15 = procdata.dbfile;\n      if (iVar8 < 2) {\n        mainprocessor = process_simple;\n      }\n      else {\n        past_pat_inspector = pvVar6->next;\n        if (local_c98 == 0) {\n          mainprocessor = process_or;\n        }\n        else {\n          mainprocessor = process_and;\n        }\n      }\n      if (local_cec != 0) {\n        uVar20 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar20,pcVar15,local_ca0);\n      }\n      procdata.c = getc((FILE *)procdata.fp);\n      if ((procdata.c != -1) && (local_cac != 0)) {\n        ungetc(procdata.c,(FILE *)procdata.fp);\n        procdata.c = 0;\n      }\n      do {\n        if (procdata.c == -1) break;\n        iVar26 = (*mainprocessor)(&procdata);\n      } while (iVar26 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar20 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar19 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (procdata.endian_state == GetwordEndianStateNative) {\n            __printf_chk(1,&DAT_001207c7,uVar20);\n          }\n          else if (procdata.endian_state == GetwordEndianStateSwab) {\n            __printf_chk(1,&DAT_001207c7,uVar19);\n          }\n          else {\n            uVar20 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar20);\n          }\n        }\n        if (local_cc0 != (char **)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (char **)0x0) &&\n             (__tp = localtime((time_t *)local_cc0), __tp != (tm *)0x0)) {\n            sVar17 = strftime(hbuf4,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar17 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (hbuf4[0x13] != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (hbuf4[0x12] == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            pcVar15 = local_cc0[1];\n            uVar20 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar20,hbuf4,pcVar15);\n            sVar17 = strftime(hbuf4,0x14,"%z",__tp);\n            if (sVar17 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",hbuf4);\n          }\n          pcVar15 = human_readable(local_cb8,hbuf1,0,1,1);\n          uVar20 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar20,pcVar15);\n          pcVar15 = human_readable(statistics.total_filename_count,hbuf1,0,1,1);\n          if (results_were_filtered == false) {\n            uVar20 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar20 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar20,pcVar15);\n          pcVar15 = human_readable(statistics.highbit_filename_count,hbuf4,0,1,1);\n          pcVar14 = human_readable(statistics.newline_count,hbuf3,0,1,1);\n          pcVar21 = human_readable(statistics.whitespace_count,hbuf2,0,1,1);\n          pcVar22 = human_readable(statistics.total_filename_length,hbuf1,0,1,1);\n          uVar20 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar20,pcVar22,pcVar21,pcVar14,pcVar15);\n          if (iVar8 == 0) {\n            if (results_were_filtered == false) {\n              if (statistics.total_filename_length == 0) {\n                uVar20 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar20);\n              }\n              else {\n                local_ce8 = (double)statistics.total_filename_length;\n                uVar20 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar20)\n                ;\n              }\n            }\n            else {\n              uVar20 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar20);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar8 = ferror((FILE *)procdata.fp);\n      uVar25 = limits.items_accepted;\n      if (iVar8 != 0) {\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        uVar25 = 0;\n      }\n    }\n    else {\n      ppuVar18 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar18 + (ulong)(byte)*pcVar15 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar26 = *pcVar15 + -0x30;\n      if (iVar26 < 2) {\n        if (iVar26 == 1) {\n          if (check_existence == ACCEPT_NON_EXISTING) {\n            uVar20 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar20);\n            uVar25 = 0;\n            goto LAB_0010514b;\n          }\n          if ((EVar5 != ACCEPT_EXISTING) &&\n             (local_cd4 = ACCEPT_EXISTING, local_cb0 != 0 || local_cec != 0)) {\n            pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n            uVar20 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar20,pcVar15);\n            local_cd4 = ACCEPT_EXISTING;\n          }\n        }\n        add_visitor(visit_locate02_format,(void *)0x0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n      uVar20 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar20,pcVar15,0);\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n      uVar20 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar20,pcVar15,iVar26);\n      uVar25 = 0;\n    }\nLAB_0010514b:\n    iVar8 = fclose(local_ce0);\n    if (iVar8 == -1) {\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n      piVar16 = __errno_location();\n      error(0,*piVar16,&DAT_001207c7,pcVar15);\n      goto LAB_0010468d;\n    }\n    if (local_cd0 != (char *)0x0) {\n      free(local_cd0);\n    }\n    if ((local_d00 == (char *)0x0) ||\n       (_Var7 = splitstring(local_d00,":",false,&path_element_pos,&path_element_len), !_Var7))\n    break;\n  }" while (parenthesized_expression "((local_cd8 == 0 || (limits.items_accepted < limits.limit)))" ( (parenthesized_expression "(local_cd8 == 0 || (limits.items_accepted < limits.limit))" ( (binary_expression "local_cd8 == 0 || (limits.items_accepted < limits.limit)" (binary_expression "local_cd8 == 0" identifier == number_literal) || (parenthesized_expression "(limits.items_accepted < limits.limit)" ( (binary_expression "limits.items_accepted < limits.limit" (field_expression "limits.items_accepted" identifier . field_identifier) < (field_expression "limits.limit" identifier . field_identifier)) ))) )) )) (compound_statement "{\n    statistics.highbit_filename_count = 0;\n    statistics.newline_count = 0;\n    statistics.whitespace_count = 0;\n    statistics.total_filename_length = 0;\n    statistics.total_filename_count = 0;\n    statistics.compressed_bytes = 0;\n    if (local_d00 == (char *)0x0) {\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = selected_secure_db;\n      local_cd0 = local_d00;\n      uVar10 = local_ca4;\n      local_ca4 = 0xffffffff;\n    }\n    else {\n      if (path_element_len == 1) {\n        if (local_d00[path_element_pos] == '-') {\n          if (!bVar3) {\n            bVar3 = true;\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar10 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar20 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar20);\n          goto LAB_0010468d;\n        }\n        if (local_d00[path_element_pos] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (path_element_len != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + path_element_pos,path_element_len);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar10 = opendb(local_cf8);\n      if ((int)uVar10 < 0) {\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        goto LAB_0010468d;\n      }\n    }\nLAB_00105254:\n    iVar8 = __fxstat(1,uVar10,(stat *)&st);\n    if (iVar8 == 0) {\n      local_cb8 = st.st_size;\n      end = (char *)st.st_mtim.tv_sec;\n      local_c60 = st.st_mtim.tv_nsec;\n      tVar11 = time((time_t *)&opti);\n      if (tVar11 == -1) {\n        uVar20 = dcgettext(0,"time system call failed",5);\n        piVar16 = __errno_location();\n        error(0,*piVar16,uVar20);\n      }\n      else {\n        dVar30 = difftime(CONCAT44(uStack_c6c,opti),st.st_mtim.tv_sec);\n        uVar4 = warn_number_units;\n        if ((double)(warn_number_units * 0x15180) < dVar30) {\n          uVar20 = dcgettext(0,"days",5);\n          uVar19 = dcgettext(0,"days",5);\n          pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n          uVar12 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar30 / _DAT_0011ed98,0,0,uVar12,pcVar15,uVar4,uVar19,uVar20);\n        }\n      }\n      local_ce0 = fdopen(uVar10,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &end;\n    }\n    else {\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n      piVar16 = __errno_location();\n      error(0,*piVar16,&DAT_001207c7,pcVar15);\n      local_ce0 = fdopen(uVar10,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (char **)0x0;\n    }\n    EVar5 = check_existence;\n    uVar10 = optind;\n    pcVar14 = (char *)(ulong)optind;\n    iVar8 = argc - optind;\n    local_cd4 = check_existence;\n    procdata.endian_state = GetwordEndianStateInitial;\n    procdata.count = 0;\n    procdata.len = 0;\n    procdata.dbfile = local_cf8;\n    procdata.fp = (FILE *)local_ce0;\n    inspectors = (visitor *)0x0;\n    lastinspector = (visitor *)0x0;\n    past_pat_inspector = (visitor *)0x0;\n    results_were_filtered = false;\n    procdata.pathsize = 0x80;\n    procdata.original_filename = (char *)xmalloc(0x80);\n    sVar17 = fread(procdata.original_filename,1,2,(FILE *)procdata.fp);\n    pcVar15 = procdata.original_filename;\n    uVar27 = (ulong)(int)sVar17;\n    if (2 < uVar27) {\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }\n    if ((uVar27 < 2) || (procdata.original_filename[1] != '\0')) {\nLAB_00105aa4:\n      extend(&procdata,10,0);\n      sVar23 = fread(procdata.original_filename + uVar27,1,10 - uVar27,(FILE *)procdata.fp);\n      iVar26 = (int)sVar17 + (int)sVar23;\n      if (((ulong)(long)iVar26 < 10) ||\n         (local_ca8 = memcmp(procdata.original_filename,&DAT_0011eb40,10), local_ca8 != 0)) {\n        extend(&procdata,0x100,0);\n        if ((0xff < iVar26) ||\n           (sVar17 = fread(procdata.original_filename + iVar26,1,(long)(0x100 - iVar26),\n                           (FILE *)procdata.fp), iVar26 + (int)sVar17 == 0x100)) {\n          pcVar15 = procdata.bigram1;\n          pcVar21 = procdata.original_filename;\n          do {\n            *pcVar15 = *pcVar21;\n            pcVar15[0x80] = pcVar21[1];\n            pcVar21 = pcVar21 + 2;\n            pcVar15 = pcVar15 + 1;\n          } while (pcVar15 != procdata.bigram2);\n          add_visitor(visit_old_format,(void *)0x0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        pcVar14 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        uVar20 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar20,pcVar14);\nLAB_00104daa:\n        uVar10 = (uint)pcVar14;\n        add_visitor(visit_basename,(void *)0x0);\n      }\n      else {\n        add_visitor(visit_locate02_format,(void *)0x0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar8) {\n        ppcVar28 = argv + (int)uVar10;\n        do {\n          results_were_filtered = true;\n          pcVar15 = *ppcVar28;\n          if (local_d04 == 0) {\n            pcVar14 = strpbrk(pcVar15,"*?[]\\");\n            if (pcVar14 == (char *)0x0) {\n              sVar17 = __ctype_get_mb_cur_max();\n              if (sVar17 == 1) {\n                fn = visit_substring_match_nocasefold_narrow;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_narrow;\n                }\n              }\n              else {\n                fn = visit_substring_match_nocasefold_wide;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_wide;\n                }\n              }\n              add_visitor(fn,pcVar15);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              add_visitor(visit_globmatch_casefold,pcVar15);\n            }\n          }\n          else {\n            bufp = (re_pattern_buffer *)xmalloc(0x40);\n            bufp->buffer = (re_dfa_t *)0x0;\n            bufp->allocated = 0;\n            bufp->used = 0;\n            bufp->syntax = 0;\n            bufp->fastmap = (char *)0x0;\n            bufp->translate = (uchar *)0x0;\n            bufp->re_nsub = 0;\n            *(undefined8 *)&bufp->field_0x38 = 0;\n            rpl_re_set_syntax((long)(int)uVar9);\n            bufp->allocated = 100;\n            prVar13 = (re_dfa_t *)xmalloc(100);\n            bufp->buffer = prVar13;\n            bufp->fastmap = (char *)0x0;\n            bufp->syntax = (long)(int)uVar9;\n            bufp->translate = (uchar *)0x0;\n            uVar27 = 0xffffffffffffffff;\n            pcVar14 = pcVar15;\n            do {\n              if (uVar27 == 0) break;\n              uVar27 = uVar27 - 1;\n              cVar1 = *pcVar14;\n              pcVar14 = pcVar14 + (ulong)bVar29 * -2 + 1;\n            } while (cVar1 != '\0');\n            pcVar14 = rpl_re_compile_pattern(pcVar15,~uVar27 - 1,bufp);\n            if (pcVar14 == (char *)0x0) {\n              add_visitor(visit_regex,bufp);\n            }\n            else {\n              error(1,0,&DAT_001207c7,pcVar14);\nLAB_00104ee7:\n              add_visitor(visit_globmatch_nofold,pcVar15);\n            }\n          }\n          ppcVar28 = ppcVar28 + 1;\n        } while (ppcVar28 != argv + (long)(int)uVar10 + (ulong)(iVar8 - 1) + 1);\n      }\n      pvVar6 = lastinspector;\n      if (local_cd4 == ACCEPT_EXISTING) {\n        results_were_filtered = true;\n        if (follow_symlinks == 0) {\n          add_visitor(visit_existing_nofollow,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_existing_follow,(void *)0x0);\n        }\n      }\n      else if (local_cd4 == ACCEPT_NON_EXISTING) {\n        results_were_filtered = true;\n        if (follow_symlinks == 0) {\n          add_visitor(visit_non_existing_nofollow,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_non_existing_follow,(void *)0x0);\n        }\n      }\n      if (local_cec != 0) {\n        add_visitor(visit_stats,&statistics);\n      }\n      if (local_cb0 != 0) {\n        if (print_quoted_filename == false) {\n          add_visitor(visit_justprint_unquoted,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_justprint_quoted,(void *)0x0);\n        }\n      }\n      if (local_cd8 == 0) {\n        add_visitor(visit_count,&limits);\n      }\n      else {\n        add_visitor(visit_limit,&limits);\n      }\n      pcVar15 = procdata.dbfile;\n      if (iVar8 < 2) {\n        mainprocessor = process_simple;\n      }\n      else {\n        past_pat_inspector = pvVar6->next;\n        if (local_c98 == 0) {\n          mainprocessor = process_or;\n        }\n        else {\n          mainprocessor = process_and;\n        }\n      }\n      if (local_cec != 0) {\n        uVar20 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar20,pcVar15,local_ca0);\n      }\n      procdata.c = getc((FILE *)procdata.fp);\n      if ((procdata.c != -1) && (local_cac != 0)) {\n        ungetc(procdata.c,(FILE *)procdata.fp);\n        procdata.c = 0;\n      }\n      do {\n        if (procdata.c == -1) break;\n        iVar26 = (*mainprocessor)(&procdata);\n      } while (iVar26 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar20 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar19 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (procdata.endian_state == GetwordEndianStateNative) {\n            __printf_chk(1,&DAT_001207c7,uVar20);\n          }\n          else if (procdata.endian_state == GetwordEndianStateSwab) {\n            __printf_chk(1,&DAT_001207c7,uVar19);\n          }\n          else {\n            uVar20 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar20);\n          }\n        }\n        if (local_cc0 != (char **)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (char **)0x0) &&\n             (__tp = localtime((time_t *)local_cc0), __tp != (tm *)0x0)) {\n            sVar17 = strftime(hbuf4,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar17 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (hbuf4[0x13] != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (hbuf4[0x12] == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            pcVar15 = local_cc0[1];\n            uVar20 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar20,hbuf4,pcVar15);\n            sVar17 = strftime(hbuf4,0x14,"%z",__tp);\n            if (sVar17 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",hbuf4);\n          }\n          pcVar15 = human_readable(local_cb8,hbuf1,0,1,1);\n          uVar20 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar20,pcVar15);\n          pcVar15 = human_readable(statistics.total_filename_count,hbuf1,0,1,1);\n          if (results_were_filtered == false) {\n            uVar20 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar20 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar20,pcVar15);\n          pcVar15 = human_readable(statistics.highbit_filename_count,hbuf4,0,1,1);\n          pcVar14 = human_readable(statistics.newline_count,hbuf3,0,1,1);\n          pcVar21 = human_readable(statistics.whitespace_count,hbuf2,0,1,1);\n          pcVar22 = human_readable(statistics.total_filename_length,hbuf1,0,1,1);\n          uVar20 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar20,pcVar22,pcVar21,pcVar14,pcVar15);\n          if (iVar8 == 0) {\n            if (results_were_filtered == false) {\n              if (statistics.total_filename_length == 0) {\n                uVar20 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar20);\n              }\n              else {\n                local_ce8 = (double)statistics.total_filename_length;\n                uVar20 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar20)\n                ;\n              }\n            }\n            else {\n              uVar20 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar20);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar8 = ferror((FILE *)procdata.fp);\n      uVar25 = limits.items_accepted;\n      if (iVar8 != 0) {\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        uVar25 = 0;\n      }\n    }\n    else {\n      ppuVar18 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar18 + (ulong)(byte)*pcVar15 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar26 = *pcVar15 + -0x30;\n      if (iVar26 < 2) {\n        if (iVar26 == 1) {\n          if (check_existence == ACCEPT_NON_EXISTING) {\n            uVar20 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar20);\n            uVar25 = 0;\n            goto LAB_0010514b;\n          }\n          if ((EVar5 != ACCEPT_EXISTING) &&\n             (local_cd4 = ACCEPT_EXISTING, local_cb0 != 0 || local_cec != 0)) {\n            pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n            uVar20 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar20,pcVar15);\n            local_cd4 = ACCEPT_EXISTING;\n          }\n        }\n        add_visitor(visit_locate02_format,(void *)0x0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n      uVar20 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar20,pcVar15,0);\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n      uVar20 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar20,pcVar15,iVar26);\n      uVar25 = 0;\n    }\nLAB_0010514b:\n    iVar8 = fclose(local_ce0);\n    if (iVar8 == -1) {\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n      piVar16 = __errno_location();\n      error(0,*piVar16,&DAT_001207c7,pcVar15);\n      goto LAB_0010468d;\n    }\n    if (local_cd0 != (char *)0x0) {\n      free(local_cd0);\n    }\n    if ((local_d00 == (char *)0x0) ||\n       (_Var7 = splitstring(local_d00,":",false,&path_element_pos,&path_element_len), !_Var7))\n    break;\n  }" { (expression_statement "statistics.highbit_filename_count = 0;" (assignment_expression "statistics.highbit_filename_count = 0" (field_expression "statistics.highbit_filename_count" identifier . field_identifier) = number_literal) ;) (expression_statement "statistics.newline_count = 0;" (assignment_expression "statistics.newline_count = 0" (field_expression "statistics.newline_count" identifier . field_identifier) = number_literal) ;) (expression_statement "statistics.whitespace_count = 0;" (assignment_expression "statistics.whitespace_count = 0" (field_expression "statistics.whitespace_count" identifier . field_identifier) = number_literal) ;) (expression_statement "statistics.total_filename_length = 0;" (assignment_expression "statistics.total_filename_length = 0" (field_expression "statistics.total_filename_length" identifier . field_identifier) = number_literal) ;) (expression_statement "statistics.total_filename_count = 0;" (assignment_expression "statistics.total_filename_count = 0" (field_expression "statistics.total_filename_count" identifier . field_identifier) = number_literal) ;) (expression_statement "statistics.compressed_bytes = 0;" (assignment_expression "statistics.compressed_bytes = 0" (field_expression "statistics.compressed_bytes" identifier . field_identifier) = number_literal) ;) (if_statement "if (local_d00 == (char *)0x0) {\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = selected_secure_db;\n      local_cd0 = local_d00;\n      uVar10 = local_ca4;\n      local_ca4 = 0xffffffff;\n    }\n    else {\n      if (path_element_len == 1) {\n        if (local_d00[path_element_pos] == '-') {\n          if (!bVar3) {\n            bVar3 = true;\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar10 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar20 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar20);\n          goto LAB_0010468d;\n        }\n        if (local_d00[path_element_pos] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (path_element_len != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + path_element_pos,path_element_len);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar10 = opendb(local_cf8);\n      if ((int)uVar10 < 0) {\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        goto LAB_0010468d;\n      }\n    }" if (parenthesized_expression "(local_d00 == (char *)0x0)" ( (binary_expression "local_d00 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = selected_secure_db;\n      local_cd0 = local_d00;\n      uVar10 = local_ca4;\n      local_ca4 = 0xffffffff;\n    }" { (if_statement "if (local_ca4 == 0xffffffff) break;" if (parenthesized_expression "(local_ca4 == 0xffffffff)" ( (binary_expression "local_ca4 == 0xffffffff" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "local_cf8 = selected_secure_db;" (assignment_expression "local_cf8 = selected_secure_db" identifier = identifier) ;) (expression_statement "local_cd0 = local_d00;" (assignment_expression "local_cd0 = local_d00" identifier = identifier) ;) (expression_statement "uVar10 = local_ca4;" (assignment_expression "uVar10 = local_ca4" identifier = identifier) ;) (expression_statement "local_ca4 = 0xffffffff;" (assignment_expression "local_ca4 = 0xffffffff" identifier = number_literal) ;) }) (else_clause "else {\n      if (path_element_len == 1) {\n        if (local_d00[path_element_pos] == '-') {\n          if (!bVar3) {\n            bVar3 = true;\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar10 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar20 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar20);\n          goto LAB_0010468d;\n        }\n        if (local_d00[path_element_pos] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (path_element_len != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + path_element_pos,path_element_len);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar10 = opendb(local_cf8);\n      if ((int)uVar10 < 0) {\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        goto LAB_0010468d;\n      }\n    }" else (compound_statement "{\n      if (path_element_len == 1) {\n        if (local_d00[path_element_pos] == '-') {\n          if (!bVar3) {\n            bVar3 = true;\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar10 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar20 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar20);\n          goto LAB_0010468d;\n        }\n        if (local_d00[path_element_pos] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (path_element_len != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + path_element_pos,path_element_len);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar10 = opendb(local_cf8);\n      if ((int)uVar10 < 0) {\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        goto LAB_0010468d;\n      }\n    }" { (if_statement "if (path_element_len == 1) {\n        if (local_d00[path_element_pos] == '-') {\n          if (!bVar3) {\n            bVar3 = true;\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar10 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar20 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar20);\n          goto LAB_0010468d;\n        }\n        if (local_d00[path_element_pos] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (path_element_len != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + path_element_pos,path_element_len);\n          local_cd0 = local_cf8;\n        }\n      }" if (parenthesized_expression "(path_element_len == 1)" ( (binary_expression "path_element_len == 1" identifier == number_literal) )) (compound_statement "{\n        if (local_d00[path_element_pos] == '-') {\n          if (!bVar3) {\n            bVar3 = true;\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar10 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar20 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar20);\n          goto LAB_0010468d;\n        }\n        if (local_d00[path_element_pos] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }" { (if_statement "if (local_d00[path_element_pos] == '-') {\n          if (!bVar3) {\n            bVar3 = true;\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar10 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar20 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar20);\n          goto LAB_0010468d;\n        }" if (parenthesized_expression "(local_d00[path_element_pos] == '-')" ( (binary_expression "local_d00[path_element_pos] == '-'" (subscript_expression "local_d00[path_element_pos]" identifier [ identifier ]) == (char_literal "'-'" ' character ')) )) (compound_statement "{\n          if (!bVar3) {\n            bVar3 = true;\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar10 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar20 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar20);\n          goto LAB_0010468d;\n        }" { (if_statement "if (!bVar3) {\n            bVar3 = true;\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar10 = local_cc8;\n            goto LAB_00105254;\n          }" if (parenthesized_expression "(!bVar3)" ( (unary_expression "!bVar3" ! identifier) )) (compound_statement "{\n            bVar3 = true;\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar10 = local_cc8;\n            goto LAB_00105254;\n          }" { (expression_statement "bVar3 = true;" (assignment_expression "bVar3 = true" identifier = true) ;) (expression_statement "local_cf8 = "<stdin>";" (assignment_expression "local_cf8 = "<stdin>"" identifier = (string_literal ""<stdin>"" " string_content ")) ;) (expression_statement "local_cd0 = (char *)0x0;" (assignment_expression "local_cd0 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar10 = local_cc8;" (assignment_expression "uVar10 = local_cc8" identifier = identifier) ;) (goto_statement "goto LAB_00105254;" goto statement_identifier ;) })) (expression_statement "uVar20 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);" (assignment_expression "uVar20 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5)" identifier = (call_expression "dcgettext(0,"warning: the locate database can only be read from stdin once.",5)" identifier (argument_list "(0,"warning: the locate database can only be read from stdin once.",5)" ( number_literal , (string_literal ""warning: the locate database can only be read from stdin once."" " string_content ") , number_literal )))) ;) (expression_statement "error(0,0,uVar20);" (call_expression "error(0,0,uVar20)" identifier (argument_list "(0,0,uVar20)" ( number_literal , number_literal , identifier ))) ;) (goto_statement "goto LAB_0010468d;" goto statement_identifier ;) })) (if_statement "if (local_d00[path_element_pos] != '.') goto LAB_00104891;" if (parenthesized_expression "(local_d00[path_element_pos] != '.')" ( (binary_expression "local_d00[path_element_pos] != '.'" (subscript_expression "local_d00[path_element_pos]" identifier [ identifier ]) != (char_literal "'.'" ' character ')) )) (goto_statement "goto LAB_00104891;" goto statement_identifier ;)) (expression_statement "local_cf8 = "/var/cache/locate/locatedb";" (assignment_expression "local_cf8 = "/var/cache/locate/locatedb"" identifier = (string_literal ""/var/cache/locate/locatedb"" " string_content ")) ;) (expression_statement "local_cd0 = (char *)0x0;" (assignment_expression "local_cd0 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (path_element_len != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + path_element_pos,path_element_len);\n          local_cd0 = local_cf8;\n        }\n      }" else (compound_statement "{\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (path_element_len != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + path_element_pos,path_element_len);\n          local_cd0 = local_cf8;\n        }\n      }" { (expression_statement "local_cf8 = "/var/cache/locate/locatedb";" (assignment_expression "local_cf8 = "/var/cache/locate/locatedb"" identifier = (string_literal ""/var/cache/locate/locatedb"" " string_content ")) ;) (expression_statement "local_cd0 = (char *)0x0;" (assignment_expression "local_cd0 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (path_element_len != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + path_element_pos,path_element_len);\n          local_cd0 = local_cf8;\n        }" if (parenthesized_expression "(path_element_len != 0)" ( (binary_expression "path_element_len != 0" identifier != number_literal) )) (compound_statement "{\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + path_element_pos,path_element_len);\n          local_cd0 = local_cf8;\n        }" { (labeled_statement "LAB_00104891:\n          local_cf8 = strndup(local_d00 + path_element_pos,path_element_len);" statement_identifier : (expression_statement "local_cf8 = strndup(local_d00 + path_element_pos,path_element_len);" (assignment_expression "local_cf8 = strndup(local_d00 + path_element_pos,path_element_len)" identifier = (call_expression "strndup(local_d00 + path_element_pos,path_element_len)" identifier (argument_list "(local_d00 + path_element_pos,path_element_len)" ( (binary_expression "local_d00 + path_element_pos" identifier + identifier) , identifier )))) ;)) (expression_statement "local_cd0 = local_cf8;" (assignment_expression "local_cd0 = local_cf8" identifier = identifier) ;) })) }))) (expression_statement "uVar10 = opendb(local_cf8);" (assignment_expression "uVar10 = opendb(local_cf8)" identifier = (call_expression "opendb(local_cf8)" identifier (argument_list "(local_cf8)" ( identifier )))) ;) (if_statement "if ((int)uVar10 < 0) {\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        goto LAB_0010468d;\n      }" if (parenthesized_expression "((int)uVar10 < 0)" ( (binary_expression "(int)uVar10 < 0" (cast_expression "(int)uVar10" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        goto LAB_0010468d;\n      }" { (expression_statement "pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);" (assignment_expression "pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8)" identifier = (call_expression "quotearg_n_style(L'\0',locale_quoting_style,local_cf8)" identifier (argument_list "(L'\0',locale_quoting_style,local_cf8)" ( (char_literal "L'\0'" L' escape_sequence ') , identifier , identifier )))) ;) (expression_statement "piVar16 = __errno_location();" (assignment_expression "piVar16 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,*piVar16,&DAT_001207c7,pcVar15);" (call_expression "error(0,*piVar16,&DAT_001207c7,pcVar15)" identifier (argument_list "(0,*piVar16,&DAT_001207c7,pcVar15)" ( number_literal , (pointer_expression "*piVar16" * identifier) , (pointer_expression "&DAT_001207c7" & identifier) , identifier ))) ;) (goto_statement "goto LAB_0010468d;" goto statement_identifier ;) })) }))) (labeled_statement "LAB_00105254:\n    iVar8 = __fxstat(1,uVar10,(stat *)&st);" statement_identifier : (expression_statement "iVar8 = __fxstat(1,uVar10,(stat *)&st);" (assignment_expression "iVar8 = __fxstat(1,uVar10,(stat *)&st)" identifier = (call_expression "__fxstat(1,uVar10,(stat *)&st)" identifier (argument_list "(1,uVar10,(stat *)&st)" ( number_literal , identifier , (cast_expression "(stat *)&st" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&st" & identifier)) )))) ;)) (if_statement "if (iVar8 == 0) {\n      local_cb8 = st.st_size;\n      end = (char *)st.st_mtim.tv_sec;\n      local_c60 = st.st_mtim.tv_nsec;\n      tVar11 = time((time_t *)&opti);\n      if (tVar11 == -1) {\n        uVar20 = dcgettext(0,"time system call failed",5);\n        piVar16 = __errno_location();\n        error(0,*piVar16,uVar20);\n      }\n      else {\n        dVar30 = difftime(CONCAT44(uStack_c6c,opti),st.st_mtim.tv_sec);\n        uVar4 = warn_number_units;\n        if ((double)(warn_number_units * 0x15180) < dVar30) {\n          uVar20 = dcgettext(0,"days",5);\n          uVar19 = dcgettext(0,"days",5);\n          pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n          uVar12 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar30 / _DAT_0011ed98,0,0,uVar12,pcVar15,uVar4,uVar19,uVar20);\n        }\n      }\n      local_ce0 = fdopen(uVar10,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &end;\n    }\n    else {\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n      piVar16 = __errno_location();\n      error(0,*piVar16,&DAT_001207c7,pcVar15);\n      local_ce0 = fdopen(uVar10,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (char **)0x0;\n    }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n      local_cb8 = st.st_size;\n      end = (char *)st.st_mtim.tv_sec;\n      local_c60 = st.st_mtim.tv_nsec;\n      tVar11 = time((time_t *)&opti);\n      if (tVar11 == -1) {\n        uVar20 = dcgettext(0,"time system call failed",5);\n        piVar16 = __errno_location();\n        error(0,*piVar16,uVar20);\n      }\n      else {\n        dVar30 = difftime(CONCAT44(uStack_c6c,opti),st.st_mtim.tv_sec);\n        uVar4 = warn_number_units;\n        if ((double)(warn_number_units * 0x15180) < dVar30) {\n          uVar20 = dcgettext(0,"days",5);\n          uVar19 = dcgettext(0,"days",5);\n          pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n          uVar12 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar30 / _DAT_0011ed98,0,0,uVar12,pcVar15,uVar4,uVar19,uVar20);\n        }\n      }\n      local_ce0 = fdopen(uVar10,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &end;\n    }" { (expression_statement "local_cb8 = st.st_size;" (assignment_expression "local_cb8 = st.st_size" identifier = (field_expression "st.st_size" identifier . field_identifier)) ;) (expression_statement "end = (char *)st.st_mtim.tv_sec;" (assignment_expression "end = (char *)st.st_mtim.tv_sec" identifier = (cast_expression "(char *)st.st_mtim.tv_sec" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (field_expression "st.st_mtim.tv_sec" (field_expression "st.st_mtim" identifier . field_identifier) . field_identifier))) ;) (expression_statement "local_c60 = st.st_mtim.tv_nsec;" (assignment_expression "local_c60 = st.st_mtim.tv_nsec" identifier = (field_expression "st.st_mtim.tv_nsec" (field_expression "st.st_mtim" identifier . field_identifier) . field_identifier)) ;) (expression_statement "tVar11 = time((time_t *)&opti);" (assignment_expression "tVar11 = time((time_t *)&opti)" identifier = (call_expression "time((time_t *)&opti)" identifier (argument_list "((time_t *)&opti)" ( (cast_expression "(time_t *)&opti" ( (type_descriptor "time_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&opti" & identifier)) )))) ;) (if_statement "if (tVar11 == -1) {\n        uVar20 = dcgettext(0,"time system call failed",5);\n        piVar16 = __errno_location();\n        error(0,*piVar16,uVar20);\n      }\n      else {\n        dVar30 = difftime(CONCAT44(uStack_c6c,opti),st.st_mtim.tv_sec);\n        uVar4 = warn_number_units;\n        if ((double)(warn_number_units * 0x15180) < dVar30) {\n          uVar20 = dcgettext(0,"days",5);\n          uVar19 = dcgettext(0,"days",5);\n          pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n          uVar12 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar30 / _DAT_0011ed98,0,0,uVar12,pcVar15,uVar4,uVar19,uVar20);\n        }\n      }" if (parenthesized_expression "(tVar11 == -1)" ( (binary_expression "tVar11 == -1" identifier == number_literal) )) (compound_statement "{\n        uVar20 = dcgettext(0,"time system call failed",5);\n        piVar16 = __errno_location();\n        error(0,*piVar16,uVar20);\n      }" { (expression_statement "uVar20 = dcgettext(0,"time system call failed",5);" (assignment_expression "uVar20 = dcgettext(0,"time system call failed",5)" identifier = (call_expression "dcgettext(0,"time system call failed",5)" identifier (argument_list "(0,"time system call failed",5)" ( number_literal , (string_literal ""time system call failed"" " string_content ") , number_literal )))) ;) (expression_statement "piVar16 = __errno_location();" (assignment_expression "piVar16 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,*piVar16,uVar20);" (call_expression "error(0,*piVar16,uVar20)" identifier (argument_list "(0,*piVar16,uVar20)" ( number_literal , (pointer_expression "*piVar16" * identifier) , identifier ))) ;) }) (else_clause "else {\n        dVar30 = difftime(CONCAT44(uStack_c6c,opti),st.st_mtim.tv_sec);\n        uVar4 = warn_number_units;\n        if ((double)(warn_number_units * 0x15180) < dVar30) {\n          uVar20 = dcgettext(0,"days",5);\n          uVar19 = dcgettext(0,"days",5);\n          pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n          uVar12 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar30 / _DAT_0011ed98,0,0,uVar12,pcVar15,uVar4,uVar19,uVar20);\n        }\n      }" else (compound_statement "{\n        dVar30 = difftime(CONCAT44(uStack_c6c,opti),st.st_mtim.tv_sec);\n        uVar4 = warn_number_units;\n        if ((double)(warn_number_units * 0x15180) < dVar30) {\n          uVar20 = dcgettext(0,"days",5);\n          uVar19 = dcgettext(0,"days",5);\n          pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n          uVar12 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar30 / _DAT_0011ed98,0,0,uVar12,pcVar15,uVar4,uVar19,uVar20);\n        }\n      }" { (expression_statement "dVar30 = difftime(CONCAT44(uStack_c6c,opti),st.st_mtim.tv_sec);" (assignment_expression "dVar30 = difftime(CONCAT44(uStack_c6c,opti),st.st_mtim.tv_sec)" identifier = (call_expression "difftime(CONCAT44(uStack_c6c,opti),st.st_mtim.tv_sec)" identifier (argument_list "(CONCAT44(uStack_c6c,opti),st.st_mtim.tv_sec)" ( (call_expression "CONCAT44(uStack_c6c,opti)" identifier (argument_list "(uStack_c6c,opti)" ( identifier , identifier ))) , (field_expression "st.st_mtim.tv_sec" (field_expression "st.st_mtim" identifier . field_identifier) . field_identifier) )))) ;) (expression_statement "uVar4 = warn_number_units;" (assignment_expression "uVar4 = warn_number_units" identifier = identifier) ;) (if_statement "if ((double)(warn_number_units * 0x15180) < dVar30) {\n          uVar20 = dcgettext(0,"days",5);\n          uVar19 = dcgettext(0,"days",5);\n          pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n          uVar12 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar30 / _DAT_0011ed98,0,0,uVar12,pcVar15,uVar4,uVar19,uVar20);\n        }" if (parenthesized_expression "((double)(warn_number_units * 0x15180) < dVar30)" ( (binary_expression "(double)(warn_number_units * 0x15180) < dVar30" (cast_expression "(double)(warn_number_units * 0x15180)" ( (type_descriptor "double" primitive_type) ) (parenthesized_expression "(warn_number_units * 0x15180)" ( (binary_expression "warn_number_units * 0x15180" identifier * number_literal) ))) < identifier) )) (compound_statement "{\n          uVar20 = dcgettext(0,"days",5);\n          uVar19 = dcgettext(0,"days",5);\n          pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n          uVar12 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar30 / _DAT_0011ed98,0,0,uVar12,pcVar15,uVar4,uVar19,uVar20);\n        }" { (expression_statement "uVar20 = dcgettext(0,"days",5);" (assignment_expression "uVar20 = dcgettext(0,"days",5)" identifier = (call_expression "dcgettext(0,"days",5)" identifier (argument_list "(0,"days",5)" ( number_literal , (string_literal ""days"" " string_content ") , number_literal )))) ;) (expression_statement "uVar19 = dcgettext(0,"days",5);" (assignment_expression "uVar19 = dcgettext(0,"days",5)" identifier = (call_expression "dcgettext(0,"days",5)" identifier (argument_list "(0,"days",5)" ( number_literal , (string_literal ""days"" " string_content ") , number_literal )))) ;) (expression_statement "pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);" (assignment_expression "pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8)" identifier = (call_expression "quotearg_n_style(L'\0',locale_quoting_style,local_cf8)" identifier (argument_list "(L'\0',locale_quoting_style,local_cf8)" ( (char_literal "L'\0'" L' escape_sequence ') , identifier , identifier )))) ;) (expression_statement "uVar12 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);" (assignment_expression "uVar12 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5)" identifier = (call_expression "dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5)" identifier (argument_list "(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5)" ( number_literal , (string_literal ""warning: database %s is more than %u %s old (actual age is %.1f %s)"" " string_content ") , number_literal )))) ;) (expression_statement "error(dVar30 / _DAT_0011ed98,0,0,uVar12,pcVar15,uVar4,uVar19,uVar20);" (call_expression "error(dVar30 / _DAT_0011ed98,0,0,uVar12,pcVar15,uVar4,uVar19,uVar20)" identifier (argument_list "(dVar30 / _DAT_0011ed98,0,0,uVar12,pcVar15,uVar4,uVar19,uVar20)" ( (binary_expression "dVar30 / _DAT_0011ed98" identifier / identifier) , number_literal , number_literal , identifier , identifier , identifier , identifier , identifier ))) ;) })) }))) (expression_statement "local_ce0 = fdopen(uVar10,"r");" (assignment_expression "local_ce0 = fdopen(uVar10,"r")" identifier = (call_expression "fdopen(uVar10,"r")" identifier (argument_list "(uVar10,"r")" ( identifier , (string_literal ""r"" " string_content ") )))) ;) (if_statement "if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;" if (parenthesized_expression "(local_ce0 == (FILE *)0x0)" ( (binary_expression "local_ce0 == (FILE *)0x0" identifier == (cast_expression "(FILE *)0x0" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00104b19;" goto statement_identifier ;)) (expression_statement "local_cc0 = &end;" (assignment_expression "local_cc0 = &end" identifier = (pointer_expression "&end" & identifier)) ;) }) (else_clause "else {\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n      piVar16 = __errno_location();\n      error(0,*piVar16,&DAT_001207c7,pcVar15);\n      local_ce0 = fdopen(uVar10,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (char **)0x0;\n    }" else (compound_statement "{\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n      piVar16 = __errno_location();\n      error(0,*piVar16,&DAT_001207c7,pcVar15);\n      local_ce0 = fdopen(uVar10,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (char **)0x0;\n    }" { (expression_statement "pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);" (assignment_expression "pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8)" identifier = (call_expression "quotearg_n_style(L'\0',locale_quoting_style,local_cf8)" identifier (argument_list "(L'\0',locale_quoting_style,local_cf8)" ( (char_literal "L'\0'" L' escape_sequence ') , identifier , identifier )))) ;) (expression_statement "piVar16 = __errno_location();" (assignment_expression "piVar16 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,*piVar16,&DAT_001207c7,pcVar15);" (call_expression "error(0,*piVar16,&DAT_001207c7,pcVar15)" identifier (argument_list "(0,*piVar16,&DAT_001207c7,pcVar15)" ( number_literal , (pointer_expression "*piVar16" * identifier) , (pointer_expression "&DAT_001207c7" & identifier) , identifier ))) ;) (expression_statement "local_ce0 = fdopen(uVar10,"r");" (assignment_expression "local_ce0 = fdopen(uVar10,"r")" identifier = (call_expression "fdopen(uVar10,"r")" identifier (argument_list "(uVar10,"r")" ( identifier , (string_literal ""r"" " string_content ") )))) ;) (if_statement "if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        goto LAB_0010468d;\n      }" if (parenthesized_expression "(local_ce0 == (FILE *)0x0)" ( (binary_expression "local_ce0 == (FILE *)0x0" identifier == (cast_expression "(FILE *)0x0" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_00104b19:\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        goto LAB_0010468d;\n      }" { (labeled_statement "LAB_00104b19:\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);" statement_identifier : (expression_statement "pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);" (assignment_expression "pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8)" identifier = (call_expression "quotearg_n_style(L'\0',locale_quoting_style,local_cf8)" identifier (argument_list "(L'\0',locale_quoting_style,local_cf8)" ( (char_literal "L'\0'" L' escape_sequence ') , identifier , identifier )))) ;)) (expression_statement "piVar16 = __errno_location();" (assignment_expression "piVar16 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,*piVar16,&DAT_001207c7,pcVar15);" (call_expression "error(0,*piVar16,&DAT_001207c7,pcVar15)" identifier (argument_list "(0,*piVar16,&DAT_001207c7,pcVar15)" ( number_literal , (pointer_expression "*piVar16" * identifier) , (pointer_expression "&DAT_001207c7" & identifier) , identifier ))) ;) (goto_statement "goto LAB_0010468d;" goto statement_identifier ;) })) (expression_statement "local_cb8 = 0;" (assignment_expression "local_cb8 = 0" identifier = number_literal) ;) (expression_statement "local_cc0 = (char **)0x0;" (assignment_expression "local_cc0 = (char **)0x0" identifier = (cast_expression "(char **)0x0" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) }))) (expression_statement "EVar5 = check_existence;" (assignment_expression "EVar5 = check_existence" identifier = identifier) ;) (expression_statement "uVar10 = optind;" (assignment_expression "uVar10 = optind" identifier = identifier) ;) (expression_statement "pcVar14 = (char *)(ulong)optind;" (assignment_expression "pcVar14 = (char *)(ulong)optind" identifier = (cast_expression "(char *)(ulong)optind" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (cast_expression "(ulong)optind" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "iVar8 = argc - optind;" (assignment_expression "iVar8 = argc - optind" identifier = (binary_expression "argc - optind" identifier - identifier)) ;) (expression_statement "local_cd4 = check_existence;" (assignment_expression "local_cd4 = check_existence" identifier = identifier) ;) (expression_statement "procdata.endian_state = GetwordEndianStateInitial;" (assignment_expression "procdata.endian_state = GetwordEndianStateInitial" (field_expression "procdata.endian_state" identifier . field_identifier) = identifier) ;) (expression_statement "procdata.count = 0;" (assignment_expression "procdata.count = 0" (field_expression "procdata.count" identifier . field_identifier) = number_literal) ;) (expression_statement "procdata.len = 0;" (assignment_expression "procdata.len = 0" (field_expression "procdata.len" identifier . field_identifier) = number_literal) ;) (expression_statement "procdata.dbfile = local_cf8;" (assignment_expression "procdata.dbfile = local_cf8" (field_expression "procdata.dbfile" identifier . field_identifier) = identifier) ;) (expression_statement "procdata.fp = (FILE *)local_ce0;" (assignment_expression "procdata.fp = (FILE *)local_ce0" (field_expression "procdata.fp" identifier . field_identifier) = (cast_expression "(FILE *)local_ce0" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "inspectors = (visitor *)0x0;" (assignment_expression "inspectors = (visitor *)0x0" identifier = (cast_expression "(visitor *)0x0" ( (type_descriptor "visitor *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "lastinspector = (visitor *)0x0;" (assignment_expression "lastinspector = (visitor *)0x0" identifier = (cast_expression "(visitor *)0x0" ( (type_descriptor "visitor *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "past_pat_inspector = (visitor *)0x0;" (assignment_expression "past_pat_inspector = (visitor *)0x0" identifier = (cast_expression "(visitor *)0x0" ( (type_descriptor "visitor *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "results_were_filtered = false;" (assignment_expression "results_were_filtered = false" identifier = false) ;) (expression_statement "procdata.pathsize = 0x80;" (assignment_expression "procdata.pathsize = 0x80" (field_expression "procdata.pathsize" identifier . field_identifier) = number_literal) ;) (expression_statement "procdata.original_filename = (char *)xmalloc(0x80);" (assignment_expression "procdata.original_filename = (char *)xmalloc(0x80)" (field_expression "procdata.original_filename" identifier . field_identifier) = (cast_expression "(char *)xmalloc(0x80)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(0x80)" identifier (argument_list "(0x80)" ( number_literal ))))) ;) (expression_statement "sVar17 = fread(procdata.original_filename,1,2,(FILE *)procdata.fp);" (assignment_expression "sVar17 = fread(procdata.original_filename,1,2,(FILE *)procdata.fp)" identifier = (call_expression "fread(procdata.original_filename,1,2,(FILE *)procdata.fp)" identifier (argument_list "(procdata.original_filename,1,2,(FILE *)procdata.fp)" ( (field_expression "procdata.original_filename" identifier . field_identifier) , number_literal , number_literal , (cast_expression "(FILE *)procdata.fp" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "procdata.fp" identifier . field_identifier)) )))) ;) (expression_statement "pcVar15 = procdata.original_filename;" (assignment_expression "pcVar15 = procdata.original_filename" identifier = (field_expression "procdata.original_filename" identifier . field_identifier)) ;) (expression_statement "uVar27 = (ulong)(int)sVar17;" (assignment_expression "uVar27 = (ulong)(int)sVar17" identifier = (cast_expression "(ulong)(int)sVar17" ( (type_descriptor "ulong" type_identifier) ) (cast_expression "(int)sVar17" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (2 < uVar27) {\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }" if (parenthesized_expression "(2 < uVar27)" ( (binary_expression "2 < uVar27" number_literal < identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }" { comment (expression_statement "__assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");" (call_expression "__assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb")" identifier (argument_list "("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb")" ( (string_literal ""len <= 2"" " string_content ") , (string_literal ""locate.c"" " string_content ") , number_literal , (string_literal ""looking_at_slocate_locatedb"" " string_content ") ))) ;) })) (if_statement "if ((uVar27 < 2) || (procdata.original_filename[1] != '\0')) {\nLAB_00105aa4:\n      extend(&procdata,10,0);\n      sVar23 = fread(procdata.original_filename + uVar27,1,10 - uVar27,(FILE *)procdata.fp);\n      iVar26 = (int)sVar17 + (int)sVar23;\n      if (((ulong)(long)iVar26 < 10) ||\n         (local_ca8 = memcmp(procdata.original_filename,&DAT_0011eb40,10), local_ca8 != 0)) {\n        extend(&procdata,0x100,0);\n        if ((0xff < iVar26) ||\n           (sVar17 = fread(procdata.original_filename + iVar26,1,(long)(0x100 - iVar26),\n                           (FILE *)procdata.fp), iVar26 + (int)sVar17 == 0x100)) {\n          pcVar15 = procdata.bigram1;\n          pcVar21 = procdata.original_filename;\n          do {\n            *pcVar15 = *pcVar21;\n            pcVar15[0x80] = pcVar21[1];\n            pcVar21 = pcVar21 + 2;\n            pcVar15 = pcVar15 + 1;\n          } while (pcVar15 != procdata.bigram2);\n          add_visitor(visit_old_format,(void *)0x0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        pcVar14 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        uVar20 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar20,pcVar14);\nLAB_00104daa:\n        uVar10 = (uint)pcVar14;\n        add_visitor(visit_basename,(void *)0x0);\n      }\n      else {\n        add_visitor(visit_locate02_format,(void *)0x0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar8) {\n        ppcVar28 = argv + (int)uVar10;\n        do {\n          results_were_filtered = true;\n          pcVar15 = *ppcVar28;\n          if (local_d04 == 0) {\n            pcVar14 = strpbrk(pcVar15,"*?[]\\");\n            if (pcVar14 == (char *)0x0) {\n              sVar17 = __ctype_get_mb_cur_max();\n              if (sVar17 == 1) {\n                fn = visit_substring_match_nocasefold_narrow;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_narrow;\n                }\n              }\n              else {\n                fn = visit_substring_match_nocasefold_wide;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_wide;\n                }\n              }\n              add_visitor(fn,pcVar15);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              add_visitor(visit_globmatch_casefold,pcVar15);\n            }\n          }\n          else {\n            bufp = (re_pattern_buffer *)xmalloc(0x40);\n            bufp->buffer = (re_dfa_t *)0x0;\n            bufp->allocated = 0;\n            bufp->used = 0;\n            bufp->syntax = 0;\n            bufp->fastmap = (char *)0x0;\n            bufp->translate = (uchar *)0x0;\n            bufp->re_nsub = 0;\n            *(undefined8 *)&bufp->field_0x38 = 0;\n            rpl_re_set_syntax((long)(int)uVar9);\n            bufp->allocated = 100;\n            prVar13 = (re_dfa_t *)xmalloc(100);\n            bufp->buffer = prVar13;\n            bufp->fastmap = (char *)0x0;\n            bufp->syntax = (long)(int)uVar9;\n            bufp->translate = (uchar *)0x0;\n            uVar27 = 0xffffffffffffffff;\n            pcVar14 = pcVar15;\n            do {\n              if (uVar27 == 0) break;\n              uVar27 = uVar27 - 1;\n              cVar1 = *pcVar14;\n              pcVar14 = pcVar14 + (ulong)bVar29 * -2 + 1;\n            } while (cVar1 != '\0');\n            pcVar14 = rpl_re_compile_pattern(pcVar15,~uVar27 - 1,bufp);\n            if (pcVar14 == (char *)0x0) {\n              add_visitor(visit_regex,bufp);\n            }\n            else {\n              error(1,0,&DAT_001207c7,pcVar14);\nLAB_00104ee7:\n              add_visitor(visit_globmatch_nofold,pcVar15);\n            }\n          }\n          ppcVar28 = ppcVar28 + 1;\n        } while (ppcVar28 != argv + (long)(int)uVar10 + (ulong)(iVar8 - 1) + 1);\n      }\n      pvVar6 = lastinspector;\n      if (local_cd4 == ACCEPT_EXISTING) {\n        results_were_filtered = true;\n        if (follow_symlinks == 0) {\n          add_visitor(visit_existing_nofollow,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_existing_follow,(void *)0x0);\n        }\n      }\n      else if (local_cd4 == ACCEPT_NON_EXISTING) {\n        results_were_filtered = true;\n        if (follow_symlinks == 0) {\n          add_visitor(visit_non_existing_nofollow,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_non_existing_follow,(void *)0x0);\n        }\n      }\n      if (local_cec != 0) {\n        add_visitor(visit_stats,&statistics);\n      }\n      if (local_cb0 != 0) {\n        if (print_quoted_filename == false) {\n          add_visitor(visit_justprint_unquoted,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_justprint_quoted,(void *)0x0);\n        }\n      }\n      if (local_cd8 == 0) {\n        add_visitor(visit_count,&limits);\n      }\n      else {\n        add_visitor(visit_limit,&limits);\n      }\n      pcVar15 = procdata.dbfile;\n      if (iVar8 < 2) {\n        mainprocessor = process_simple;\n      }\n      else {\n        past_pat_inspector = pvVar6->next;\n        if (local_c98 == 0) {\n          mainprocessor = process_or;\n        }\n        else {\n          mainprocessor = process_and;\n        }\n      }\n      if (local_cec != 0) {\n        uVar20 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar20,pcVar15,local_ca0);\n      }\n      procdata.c = getc((FILE *)procdata.fp);\n      if ((procdata.c != -1) && (local_cac != 0)) {\n        ungetc(procdata.c,(FILE *)procdata.fp);\n        procdata.c = 0;\n      }\n      do {\n        if (procdata.c == -1) break;\n        iVar26 = (*mainprocessor)(&procdata);\n      } while (iVar26 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar20 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar19 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (procdata.endian_state == GetwordEndianStateNative) {\n            __printf_chk(1,&DAT_001207c7,uVar20);\n          }\n          else if (procdata.endian_state == GetwordEndianStateSwab) {\n            __printf_chk(1,&DAT_001207c7,uVar19);\n          }\n          else {\n            uVar20 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar20);\n          }\n        }\n        if (local_cc0 != (char **)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (char **)0x0) &&\n             (__tp = localtime((time_t *)local_cc0), __tp != (tm *)0x0)) {\n            sVar17 = strftime(hbuf4,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar17 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (hbuf4[0x13] != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (hbuf4[0x12] == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            pcVar15 = local_cc0[1];\n            uVar20 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar20,hbuf4,pcVar15);\n            sVar17 = strftime(hbuf4,0x14,"%z",__tp);\n            if (sVar17 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",hbuf4);\n          }\n          pcVar15 = human_readable(local_cb8,hbuf1,0,1,1);\n          uVar20 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar20,pcVar15);\n          pcVar15 = human_readable(statistics.total_filename_count,hbuf1,0,1,1);\n          if (results_were_filtered == false) {\n            uVar20 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar20 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar20,pcVar15);\n          pcVar15 = human_readable(statistics.highbit_filename_count,hbuf4,0,1,1);\n          pcVar14 = human_readable(statistics.newline_count,hbuf3,0,1,1);\n          pcVar21 = human_readable(statistics.whitespace_count,hbuf2,0,1,1);\n          pcVar22 = human_readable(statistics.total_filename_length,hbuf1,0,1,1);\n          uVar20 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar20,pcVar22,pcVar21,pcVar14,pcVar15);\n          if (iVar8 == 0) {\n            if (results_were_filtered == false) {\n              if (statistics.total_filename_length == 0) {\n                uVar20 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar20);\n              }\n              else {\n                local_ce8 = (double)statistics.total_filename_length;\n                uVar20 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar20)\n                ;\n              }\n            }\n            else {\n              uVar20 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar20);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar8 = ferror((FILE *)procdata.fp);\n      uVar25 = limits.items_accepted;\n      if (iVar8 != 0) {\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        uVar25 = 0;\n      }\n    }\n    else {\n      ppuVar18 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar18 + (ulong)(byte)*pcVar15 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar26 = *pcVar15 + -0x30;\n      if (iVar26 < 2) {\n        if (iVar26 == 1) {\n          if (check_existence == ACCEPT_NON_EXISTING) {\n            uVar20 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar20);\n            uVar25 = 0;\n            goto LAB_0010514b;\n          }\n          if ((EVar5 != ACCEPT_EXISTING) &&\n             (local_cd4 = ACCEPT_EXISTING, local_cb0 != 0 || local_cec != 0)) {\n            pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n            uVar20 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar20,pcVar15);\n            local_cd4 = ACCEPT_EXISTING;\n          }\n        }\n        add_visitor(visit_locate02_format,(void *)0x0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n      uVar20 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar20,pcVar15,0);\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n      uVar20 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar20,pcVar15,iVar26);\n      uVar25 = 0;\n    }" if (parenthesized_expression "((uVar27 < 2) || (procdata.original_filename[1] != '\0'))" ( (binary_expression "(uVar27 < 2) || (procdata.original_filename[1] != '\0')" (parenthesized_expression "(uVar27 < 2)" ( (binary_expression "uVar27 < 2" identifier < number_literal) )) || (parenthesized_expression "(procdata.original_filename[1] != '\0')" ( (binary_expression "procdata.original_filename[1] != '\0'" (subscript_expression "procdata.original_filename[1]" (field_expression "procdata.original_filename" identifier . field_identifier) [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\nLAB_00105aa4:\n      extend(&procdata,10,0);\n      sVar23 = fread(procdata.original_filename + uVar27,1,10 - uVar27,(FILE *)procdata.fp);\n      iVar26 = (int)sVar17 + (int)sVar23;\n      if (((ulong)(long)iVar26 < 10) ||\n         (local_ca8 = memcmp(procdata.original_filename,&DAT_0011eb40,10), local_ca8 != 0)) {\n        extend(&procdata,0x100,0);\n        if ((0xff < iVar26) ||\n           (sVar17 = fread(procdata.original_filename + iVar26,1,(long)(0x100 - iVar26),\n                           (FILE *)procdata.fp), iVar26 + (int)sVar17 == 0x100)) {\n          pcVar15 = procdata.bigram1;\n          pcVar21 = procdata.original_filename;\n          do {\n            *pcVar15 = *pcVar21;\n            pcVar15[0x80] = pcVar21[1];\n            pcVar21 = pcVar21 + 2;\n            pcVar15 = pcVar15 + 1;\n          } while (pcVar15 != procdata.bigram2);\n          add_visitor(visit_old_format,(void *)0x0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        pcVar14 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        uVar20 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar20,pcVar14);\nLAB_00104daa:\n        uVar10 = (uint)pcVar14;\n        add_visitor(visit_basename,(void *)0x0);\n      }\n      else {\n        add_visitor(visit_locate02_format,(void *)0x0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar8) {\n        ppcVar28 = argv + (int)uVar10;\n        do {\n          results_were_filtered = true;\n          pcVar15 = *ppcVar28;\n          if (local_d04 == 0) {\n            pcVar14 = strpbrk(pcVar15,"*?[]\\");\n            if (pcVar14 == (char *)0x0) {\n              sVar17 = __ctype_get_mb_cur_max();\n              if (sVar17 == 1) {\n                fn = visit_substring_match_nocasefold_narrow;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_narrow;\n                }\n              }\n              else {\n                fn = visit_substring_match_nocasefold_wide;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_wide;\n                }\n              }\n              add_visitor(fn,pcVar15);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              add_visitor(visit_globmatch_casefold,pcVar15);\n            }\n          }\n          else {\n            bufp = (re_pattern_buffer *)xmalloc(0x40);\n            bufp->buffer = (re_dfa_t *)0x0;\n            bufp->allocated = 0;\n            bufp->used = 0;\n            bufp->syntax = 0;\n            bufp->fastmap = (char *)0x0;\n            bufp->translate = (uchar *)0x0;\n            bufp->re_nsub = 0;\n            *(undefined8 *)&bufp->field_0x38 = 0;\n            rpl_re_set_syntax((long)(int)uVar9);\n            bufp->allocated = 100;\n            prVar13 = (re_dfa_t *)xmalloc(100);\n            bufp->buffer = prVar13;\n            bufp->fastmap = (char *)0x0;\n            bufp->syntax = (long)(int)uVar9;\n            bufp->translate = (uchar *)0x0;\n            uVar27 = 0xffffffffffffffff;\n            pcVar14 = pcVar15;\n            do {\n              if (uVar27 == 0) break;\n              uVar27 = uVar27 - 1;\n              cVar1 = *pcVar14;\n              pcVar14 = pcVar14 + (ulong)bVar29 * -2 + 1;\n            } while (cVar1 != '\0');\n            pcVar14 = rpl_re_compile_pattern(pcVar15,~uVar27 - 1,bufp);\n            if (pcVar14 == (char *)0x0) {\n              add_visitor(visit_regex,bufp);\n            }\n            else {\n              error(1,0,&DAT_001207c7,pcVar14);\nLAB_00104ee7:\n              add_visitor(visit_globmatch_nofold,pcVar15);\n            }\n          }\n          ppcVar28 = ppcVar28 + 1;\n        } while (ppcVar28 != argv + (long)(int)uVar10 + (ulong)(iVar8 - 1) + 1);\n      }\n      pvVar6 = lastinspector;\n      if (local_cd4 == ACCEPT_EXISTING) {\n        results_were_filtered = true;\n        if (follow_symlinks == 0) {\n          add_visitor(visit_existing_nofollow,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_existing_follow,(void *)0x0);\n        }\n      }\n      else if (local_cd4 == ACCEPT_NON_EXISTING) {\n        results_were_filtered = true;\n        if (follow_symlinks == 0) {\n          add_visitor(visit_non_existing_nofollow,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_non_existing_follow,(void *)0x0);\n        }\n      }\n      if (local_cec != 0) {\n        add_visitor(visit_stats,&statistics);\n      }\n      if (local_cb0 != 0) {\n        if (print_quoted_filename == false) {\n          add_visitor(visit_justprint_unquoted,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_justprint_quoted,(void *)0x0);\n        }\n      }\n      if (local_cd8 == 0) {\n        add_visitor(visit_count,&limits);\n      }\n      else {\n        add_visitor(visit_limit,&limits);\n      }\n      pcVar15 = procdata.dbfile;\n      if (iVar8 < 2) {\n        mainprocessor = process_simple;\n      }\n      else {\n        past_pat_inspector = pvVar6->next;\n        if (local_c98 == 0) {\n          mainprocessor = process_or;\n        }\n        else {\n          mainprocessor = process_and;\n        }\n      }\n      if (local_cec != 0) {\n        uVar20 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar20,pcVar15,local_ca0);\n      }\n      procdata.c = getc((FILE *)procdata.fp);\n      if ((procdata.c != -1) && (local_cac != 0)) {\n        ungetc(procdata.c,(FILE *)procdata.fp);\n        procdata.c = 0;\n      }\n      do {\n        if (procdata.c == -1) break;\n        iVar26 = (*mainprocessor)(&procdata);\n      } while (iVar26 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar20 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar19 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (procdata.endian_state == GetwordEndianStateNative) {\n            __printf_chk(1,&DAT_001207c7,uVar20);\n          }\n          else if (procdata.endian_state == GetwordEndianStateSwab) {\n            __printf_chk(1,&DAT_001207c7,uVar19);\n          }\n          else {\n            uVar20 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar20);\n          }\n        }\n        if (local_cc0 != (char **)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (char **)0x0) &&\n             (__tp = localtime((time_t *)local_cc0), __tp != (tm *)0x0)) {\n            sVar17 = strftime(hbuf4,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar17 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (hbuf4[0x13] != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (hbuf4[0x12] == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            pcVar15 = local_cc0[1];\n            uVar20 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar20,hbuf4,pcVar15);\n            sVar17 = strftime(hbuf4,0x14,"%z",__tp);\n            if (sVar17 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",hbuf4);\n          }\n          pcVar15 = human_readable(local_cb8,hbuf1,0,1,1);\n          uVar20 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar20,pcVar15);\n          pcVar15 = human_readable(statistics.total_filename_count,hbuf1,0,1,1);\n          if (results_were_filtered == false) {\n            uVar20 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar20 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar20,pcVar15);\n          pcVar15 = human_readable(statistics.highbit_filename_count,hbuf4,0,1,1);\n          pcVar14 = human_readable(statistics.newline_count,hbuf3,0,1,1);\n          pcVar21 = human_readable(statistics.whitespace_count,hbuf2,0,1,1);\n          pcVar22 = human_readable(statistics.total_filename_length,hbuf1,0,1,1);\n          uVar20 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar20,pcVar22,pcVar21,pcVar14,pcVar15);\n          if (iVar8 == 0) {\n            if (results_were_filtered == false) {\n              if (statistics.total_filename_length == 0) {\n                uVar20 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar20);\n              }\n              else {\n                local_ce8 = (double)statistics.total_filename_length;\n                uVar20 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar20)\n                ;\n              }\n            }\n            else {\n              uVar20 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar20);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar8 = ferror((FILE *)procdata.fp);\n      uVar25 = limits.items_accepted;\n      if (iVar8 != 0) {\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        uVar25 = 0;\n      }\n    }" { (labeled_statement "LAB_00105aa4:\n      extend(&procdata,10,0);" statement_identifier : (expression_statement "extend(&procdata,10,0);" (call_expression "extend(&procdata,10,0)" identifier (argument_list "(&procdata,10,0)" ( (pointer_expression "&procdata" & identifier) , number_literal , number_literal ))) ;)) (expression_statement "sVar23 = fread(procdata.original_filename + uVar27,1,10 - uVar27,(FILE *)procdata.fp);" (assignment_expression "sVar23 = fread(procdata.original_filename + uVar27,1,10 - uVar27,(FILE *)procdata.fp)" identifier = (call_expression "fread(procdata.original_filename + uVar27,1,10 - uVar27,(FILE *)procdata.fp)" identifier (argument_list "(procdata.original_filename + uVar27,1,10 - uVar27,(FILE *)procdata.fp)" ( (binary_expression "procdata.original_filename + uVar27" (field_expression "procdata.original_filename" identifier . field_identifier) + identifier) , number_literal , (binary_expression "10 - uVar27" number_literal - identifier) , (cast_expression "(FILE *)procdata.fp" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "procdata.fp" identifier . field_identifier)) )))) ;) (expression_statement "iVar26 = (int)sVar17 + (int)sVar23;" (assignment_expression "iVar26 = (int)sVar17 + (int)sVar23" identifier = (binary_expression "(int)sVar17 + (int)sVar23" (cast_expression "(int)sVar17" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)sVar23" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (((ulong)(long)iVar26 < 10) ||\n         (local_ca8 = memcmp(procdata.original_filename,&DAT_0011eb40,10), local_ca8 != 0)) {\n        extend(&procdata,0x100,0);\n        if ((0xff < iVar26) ||\n           (sVar17 = fread(procdata.original_filename + iVar26,1,(long)(0x100 - iVar26),\n                           (FILE *)procdata.fp), iVar26 + (int)sVar17 == 0x100)) {\n          pcVar15 = procdata.bigram1;\n          pcVar21 = procdata.original_filename;\n          do {\n            *pcVar15 = *pcVar21;\n            pcVar15[0x80] = pcVar21[1];\n            pcVar21 = pcVar21 + 2;\n            pcVar15 = pcVar15 + 1;\n          } while (pcVar15 != procdata.bigram2);\n          add_visitor(visit_old_format,(void *)0x0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        pcVar14 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        uVar20 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar20,pcVar14);\nLAB_00104daa:\n        uVar10 = (uint)pcVar14;\n        add_visitor(visit_basename,(void *)0x0);\n      }\n      else {\n        add_visitor(visit_locate02_format,(void *)0x0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }" if (parenthesized_expression "(((ulong)(long)iVar26 < 10) ||\n         (local_ca8 = memcmp(procdata.original_filename,&DAT_0011eb40,10), local_ca8 != 0))" ( (binary_expression "((ulong)(long)iVar26 < 10) ||\n         (local_ca8 = memcmp(procdata.original_filename,&DAT_0011eb40,10), local_ca8 != 0)" (parenthesized_expression "((ulong)(long)iVar26 < 10)" ( (binary_expression "(ulong)(long)iVar26 < 10" (cast_expression "(ulong)(long)iVar26" ( (type_descriptor "ulong" type_identifier) ) (cast_expression "(long)iVar26" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) < number_literal) )) || (parenthesized_expression "(local_ca8 = memcmp(procdata.original_filename,&DAT_0011eb40,10), local_ca8 != 0)" ( (comma_expression "local_ca8 = memcmp(procdata.original_filename,&DAT_0011eb40,10), local_ca8 != 0" (assignment_expression "local_ca8 = memcmp(procdata.original_filename,&DAT_0011eb40,10)" identifier = (call_expression "memcmp(procdata.original_filename,&DAT_0011eb40,10)" identifier (argument_list "(procdata.original_filename,&DAT_0011eb40,10)" ( (field_expression "procdata.original_filename" identifier . field_identifier) , (pointer_expression "&DAT_0011eb40" & identifier) , number_literal )))) , (binary_expression "local_ca8 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n        extend(&procdata,0x100,0);\n        if ((0xff < iVar26) ||\n           (sVar17 = fread(procdata.original_filename + iVar26,1,(long)(0x100 - iVar26),\n                           (FILE *)procdata.fp), iVar26 + (int)sVar17 == 0x100)) {\n          pcVar15 = procdata.bigram1;\n          pcVar21 = procdata.original_filename;\n          do {\n            *pcVar15 = *pcVar21;\n            pcVar15[0x80] = pcVar21[1];\n            pcVar21 = pcVar21 + 2;\n            pcVar15 = pcVar15 + 1;\n          } while (pcVar15 != procdata.bigram2);\n          add_visitor(visit_old_format,(void *)0x0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        pcVar14 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n        uVar20 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar20,pcVar14);\nLAB_00104daa:\n        uVar10 = (uint)pcVar14;\n        add_visitor(visit_basename,(void *)0x0);\n      }" { (expression_statement "extend(&procdata,0x100,0);" (call_expression "extend(&procdata,0x100,0)" identifier (argument_list "(&procdata,0x100,0)" ( (pointer_expression "&procdata" & identifier) , number_literal , number_literal ))) ;) (if_statement "if ((0xff < iVar26) ||\n           (sVar17 = fread(procdata.original_filename + iVar26,1,(long)(0x100 - iVar26),\n                           (FILE *)procdata.fp), iVar26 + (int)sVar17 == 0x100)) {\n          pcVar15 = procdata.bigram1;\n          pcVar21 = procdata.original_filename;\n          do {\n            *pcVar15 = *pcVar21;\n            pcVar15[0x80] = pcVar21[1];\n            pcVar21 = pcVar21 + 2;\n            pcVar15 = pcVar15 + 1;\n          } while (pcVar15 != procdata.bigram2);\n          add_visitor(visit_old_format,(void *)0x0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }" if (parenthesized_expression "((0xff < iVar26) ||\n           (sVar17 = fread(procdata.original_filename + iVar26,1,(long)(0x100 - iVar26),\n                           (FILE *)procdata.fp), iVar26 + (int)sVar17 == 0x100))" ( (binary_expression "(0xff < iVar26) ||\n           (sVar17 = fread(procdata.original_filename + iVar26,1,(long)(0x100 - iVar26),\n                           (FILE *)procdata.fp), iVar26 + (int)sVar17 == 0x100)" (parenthesized_expression "(0xff < iVar26)" ( (binary_expression "0xff < iVar26" number_literal < identifier) )) || (parenthesized_expression "(sVar17 = fread(procdata.original_filename + iVar26,1,(long)(0x100 - iVar26),\n                           (FILE *)procdata.fp), iVar26 + (int)sVar17 == 0x100)" ( (comma_expression "sVar17 = fread(procdata.original_filename + iVar26,1,(long)(0x100 - iVar26),\n                           (FILE *)procdata.fp), iVar26 + (int)sVar17 == 0x100" (assignment_expression "sVar17 = fread(procdata.original_filename + iVar26,1,(long)(0x100 - iVar26),\n                           (FILE *)procdata.fp)" identifier = (call_expression "fread(procdata.original_filename + iVar26,1,(long)(0x100 - iVar26),\n                           (FILE *)procdata.fp)" identifier (argument_list "(procdata.original_filename + iVar26,1,(long)(0x100 - iVar26),\n                           (FILE *)procdata.fp)" ( (binary_expression "procdata.original_filename + iVar26" (field_expression "procdata.original_filename" identifier . field_identifier) + identifier) , number_literal , (cast_expression "(long)(0x100 - iVar26)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (parenthesized_expression "(0x100 - iVar26)" ( (binary_expression "0x100 - iVar26" number_literal - identifier) ))) , (cast_expression "(FILE *)procdata.fp" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "procdata.fp" identifier . field_identifier)) )))) , (binary_expression "iVar26 + (int)sVar17 == 0x100" (binary_expression "iVar26 + (int)sVar17" identifier + (cast_expression "(int)sVar17" ( (type_descriptor "int" primitive_type) ) identifier)) == number_literal)) ))) )) (compound_statement "{\n          pcVar15 = procdata.bigram1;\n          pcVar21 = procdata.original_filename;\n          do {\n            *pcVar15 = *pcVar21;\n            pcVar15[0x80] = pcVar21[1];\n            pcVar21 = pcVar21 + 2;\n            pcVar15 = pcVar15 + 1;\n          } while (pcVar15 != procdata.bigram2);\n          add_visitor(visit_old_format,(void *)0x0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }" { (expression_statement "pcVar15 = procdata.bigram1;" (assignment_expression "pcVar15 = procdata.bigram1" identifier = (field_expression "procdata.bigram1" identifier . field_identifier)) ;) (expression_statement "pcVar21 = procdata.original_filename;" (assignment_expression "pcVar21 = procdata.original_filename" identifier = (field_expression "procdata.original_filename" identifier . field_identifier)) ;) (do_statement "do {\n            *pcVar15 = *pcVar21;\n            pcVar15[0x80] = pcVar21[1];\n            pcVar21 = pcVar21 + 2;\n            pcVar15 = pcVar15 + 1;\n          } while (pcVar15 != procdata.bigram2);" do (compound_statement "{\n            *pcVar15 = *pcVar21;\n            pcVar15[0x80] = pcVar21[1];\n            pcVar21 = pcVar21 + 2;\n            pcVar15 = pcVar15 + 1;\n          }" { (expression_statement "*pcVar15 = *pcVar21;" (assignment_expression "*pcVar15 = *pcVar21" (pointer_expression "*pcVar15" * identifier) = (pointer_expression "*pcVar21" * identifier)) ;) (expression_statement "pcVar15[0x80] = pcVar21[1];" (assignment_expression "pcVar15[0x80] = pcVar21[1]" (subscript_expression "pcVar15[0x80]" identifier [ number_literal ]) = (subscript_expression "pcVar21[1]" identifier [ number_literal ])) ;) (expression_statement "pcVar21 = pcVar21 + 2;" (assignment_expression "pcVar21 = pcVar21 + 2" identifier = (binary_expression "pcVar21 + 2" identifier + number_literal)) ;) (expression_statement "pcVar15 = pcVar15 + 1;" (assignment_expression "pcVar15 = pcVar15 + 1" identifier = (binary_expression "pcVar15 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(pcVar15 != procdata.bigram2)" ( (binary_expression "pcVar15 != procdata.bigram2" identifier != (field_expression "procdata.bigram2" identifier . field_identifier)) )) ;) (expression_statement "add_visitor(visit_old_format,(void *)0x0);" (call_expression "add_visitor(visit_old_format,(void *)0x0)" identifier (argument_list "(visit_old_format,(void *)0x0)" ( identifier , (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ))) ;) (expression_statement "local_cac = local_cc8;" (assignment_expression "local_cac = local_cc8" identifier = identifier) ;) (expression_statement "local_ca0 = "old";" (assignment_expression "local_ca0 = "old"" identifier = (string_literal ""old"" " string_content ")) ;) (expression_statement "local_ca8 = 1;" (assignment_expression "local_ca8 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_0010543a;" goto statement_identifier ;) })) (expression_statement "pcVar14 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);" (assignment_expression "pcVar14 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8)" identifier = (call_expression "quotearg_n_style(L'\0',locale_quoting_style,local_cf8)" identifier (argument_list "(L'\0',locale_quoting_style,local_cf8)" ( (char_literal "L'\0'" L' escape_sequence ') , identifier , identifier )))) ;) (expression_statement "uVar20 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);" (assignment_expression "uVar20 = dcgettext(0,"Old-format locate database %s is too short to be valid",5)" identifier = (call_expression "dcgettext(0,"Old-format locate database %s is too short to be valid",5)" identifier (argument_list "(0,"Old-format locate database %s is too short to be valid",5)" ( number_literal , (string_literal ""Old-format locate database %s is too short to be valid"" " string_content ") , number_literal )))) ;) (expression_statement "error(1,0,uVar20,pcVar14);" (call_expression "error(1,0,uVar20,pcVar14)" identifier (argument_list "(1,0,uVar20,pcVar14)" ( number_literal , number_literal , identifier , identifier ))) ;) (labeled_statement "LAB_00104daa:\n        uVar10 = (uint)pcVar14;" statement_identifier : (expression_statement "uVar10 = (uint)pcVar14;" (assignment_expression "uVar10 = (uint)pcVar14" identifier = (cast_expression "(uint)pcVar14" ( (type_descriptor "uint" type_identifier) ) identifier)) ;)) (expression_statement "add_visitor(visit_basename,(void *)0x0);" (call_expression "add_visitor(visit_basename,(void *)0x0)" identifier (argument_list "(visit_basename,(void *)0x0)" ( identifier , (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ))) ;) }) (else_clause "else {\n        add_visitor(visit_locate02_format,(void *)0x0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }" else (compound_statement "{\n        add_visitor(visit_locate02_format,(void *)0x0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }" { (expression_statement "add_visitor(visit_locate02_format,(void *)0x0);" (call_expression "add_visitor(visit_locate02_format,(void *)0x0)" identifier (argument_list "(visit_locate02_format,(void *)0x0)" ( identifier , (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ))) ;) (expression_statement "local_ca0 = "GNU LOCATE02";" (assignment_expression "local_ca0 = "GNU LOCATE02"" identifier = (string_literal ""GNU LOCATE02"" " string_content ")) ;) (expression_statement "local_cac = 0;" (assignment_expression "local_cac = 0" identifier = number_literal) ;) (labeled_statement "LAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;" statement_identifier : (if_statement "if (local_cc4 != 0) goto LAB_00104daa;" if (parenthesized_expression "(local_cc4 != 0)" ( (binary_expression "local_cc4 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00104daa;" goto statement_identifier ;))) }))) (if_statement "if (0 < iVar8) {\n        ppcVar28 = argv + (int)uVar10;\n        do {\n          results_were_filtered = true;\n          pcVar15 = *ppcVar28;\n          if (local_d04 == 0) {\n            pcVar14 = strpbrk(pcVar15,"*?[]\\");\n            if (pcVar14 == (char *)0x0) {\n              sVar17 = __ctype_get_mb_cur_max();\n              if (sVar17 == 1) {\n                fn = visit_substring_match_nocasefold_narrow;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_narrow;\n                }\n              }\n              else {\n                fn = visit_substring_match_nocasefold_wide;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_wide;\n                }\n              }\n              add_visitor(fn,pcVar15);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              add_visitor(visit_globmatch_casefold,pcVar15);\n            }\n          }\n          else {\n            bufp = (re_pattern_buffer *)xmalloc(0x40);\n            bufp->buffer = (re_dfa_t *)0x0;\n            bufp->allocated = 0;\n            bufp->used = 0;\n            bufp->syntax = 0;\n            bufp->fastmap = (char *)0x0;\n            bufp->translate = (uchar *)0x0;\n            bufp->re_nsub = 0;\n            *(undefined8 *)&bufp->field_0x38 = 0;\n            rpl_re_set_syntax((long)(int)uVar9);\n            bufp->allocated = 100;\n            prVar13 = (re_dfa_t *)xmalloc(100);\n            bufp->buffer = prVar13;\n            bufp->fastmap = (char *)0x0;\n            bufp->syntax = (long)(int)uVar9;\n            bufp->translate = (uchar *)0x0;\n            uVar27 = 0xffffffffffffffff;\n            pcVar14 = pcVar15;\n            do {\n              if (uVar27 == 0) break;\n              uVar27 = uVar27 - 1;\n              cVar1 = *pcVar14;\n              pcVar14 = pcVar14 + (ulong)bVar29 * -2 + 1;\n            } while (cVar1 != '\0');\n            pcVar14 = rpl_re_compile_pattern(pcVar15,~uVar27 - 1,bufp);\n            if (pcVar14 == (char *)0x0) {\n              add_visitor(visit_regex,bufp);\n            }\n            else {\n              error(1,0,&DAT_001207c7,pcVar14);\nLAB_00104ee7:\n              add_visitor(visit_globmatch_nofold,pcVar15);\n            }\n          }\n          ppcVar28 = ppcVar28 + 1;\n        } while (ppcVar28 != argv + (long)(int)uVar10 + (ulong)(iVar8 - 1) + 1);\n      }" if (parenthesized_expression "(0 < iVar8)" ( (binary_expression "0 < iVar8" number_literal < identifier) )) (compound_statement "{\n        ppcVar28 = argv + (int)uVar10;\n        do {\n          results_were_filtered = true;\n          pcVar15 = *ppcVar28;\n          if (local_d04 == 0) {\n            pcVar14 = strpbrk(pcVar15,"*?[]\\");\n            if (pcVar14 == (char *)0x0) {\n              sVar17 = __ctype_get_mb_cur_max();\n              if (sVar17 == 1) {\n                fn = visit_substring_match_nocasefold_narrow;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_narrow;\n                }\n              }\n              else {\n                fn = visit_substring_match_nocasefold_wide;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_wide;\n                }\n              }\n              add_visitor(fn,pcVar15);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              add_visitor(visit_globmatch_casefold,pcVar15);\n            }\n          }\n          else {\n            bufp = (re_pattern_buffer *)xmalloc(0x40);\n            bufp->buffer = (re_dfa_t *)0x0;\n            bufp->allocated = 0;\n            bufp->used = 0;\n            bufp->syntax = 0;\n            bufp->fastmap = (char *)0x0;\n            bufp->translate = (uchar *)0x0;\n            bufp->re_nsub = 0;\n            *(undefined8 *)&bufp->field_0x38 = 0;\n            rpl_re_set_syntax((long)(int)uVar9);\n            bufp->allocated = 100;\n            prVar13 = (re_dfa_t *)xmalloc(100);\n            bufp->buffer = prVar13;\n            bufp->fastmap = (char *)0x0;\n            bufp->syntax = (long)(int)uVar9;\n            bufp->translate = (uchar *)0x0;\n            uVar27 = 0xffffffffffffffff;\n            pcVar14 = pcVar15;\n            do {\n              if (uVar27 == 0) break;\n              uVar27 = uVar27 - 1;\n              cVar1 = *pcVar14;\n              pcVar14 = pcVar14 + (ulong)bVar29 * -2 + 1;\n            } while (cVar1 != '\0');\n            pcVar14 = rpl_re_compile_pattern(pcVar15,~uVar27 - 1,bufp);\n            if (pcVar14 == (char *)0x0) {\n              add_visitor(visit_regex,bufp);\n            }\n            else {\n              error(1,0,&DAT_001207c7,pcVar14);\nLAB_00104ee7:\n              add_visitor(visit_globmatch_nofold,pcVar15);\n            }\n          }\n          ppcVar28 = ppcVar28 + 1;\n        } while (ppcVar28 != argv + (long)(int)uVar10 + (ulong)(iVar8 - 1) + 1);\n      }" { (expression_statement "ppcVar28 = argv + (int)uVar10;" (assignment_expression "ppcVar28 = argv + (int)uVar10" identifier = (binary_expression "argv + (int)uVar10" identifier + (cast_expression "(int)uVar10" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (do_statement "do {\n          results_were_filtered = true;\n          pcVar15 = *ppcVar28;\n          if (local_d04 == 0) {\n            pcVar14 = strpbrk(pcVar15,"*?[]\\");\n            if (pcVar14 == (char *)0x0) {\n              sVar17 = __ctype_get_mb_cur_max();\n              if (sVar17 == 1) {\n                fn = visit_substring_match_nocasefold_narrow;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_narrow;\n                }\n              }\n              else {\n                fn = visit_substring_match_nocasefold_wide;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_wide;\n                }\n              }\n              add_visitor(fn,pcVar15);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              add_visitor(visit_globmatch_casefold,pcVar15);\n            }\n          }\n          else {\n            bufp = (re_pattern_buffer *)xmalloc(0x40);\n            bufp->buffer = (re_dfa_t *)0x0;\n            bufp->allocated = 0;\n            bufp->used = 0;\n            bufp->syntax = 0;\n            bufp->fastmap = (char *)0x0;\n            bufp->translate = (uchar *)0x0;\n            bufp->re_nsub = 0;\n            *(undefined8 *)&bufp->field_0x38 = 0;\n            rpl_re_set_syntax((long)(int)uVar9);\n            bufp->allocated = 100;\n            prVar13 = (re_dfa_t *)xmalloc(100);\n            bufp->buffer = prVar13;\n            bufp->fastmap = (char *)0x0;\n            bufp->syntax = (long)(int)uVar9;\n            bufp->translate = (uchar *)0x0;\n            uVar27 = 0xffffffffffffffff;\n            pcVar14 = pcVar15;\n            do {\n              if (uVar27 == 0) break;\n              uVar27 = uVar27 - 1;\n              cVar1 = *pcVar14;\n              pcVar14 = pcVar14 + (ulong)bVar29 * -2 + 1;\n            } while (cVar1 != '\0');\n            pcVar14 = rpl_re_compile_pattern(pcVar15,~uVar27 - 1,bufp);\n            if (pcVar14 == (char *)0x0) {\n              add_visitor(visit_regex,bufp);\n            }\n            else {\n              error(1,0,&DAT_001207c7,pcVar14);\nLAB_00104ee7:\n              add_visitor(visit_globmatch_nofold,pcVar15);\n            }\n          }\n          ppcVar28 = ppcVar28 + 1;\n        } while (ppcVar28 != argv + (long)(int)uVar10 + (ulong)(iVar8 - 1) + 1);" do (compound_statement "{\n          results_were_filtered = true;\n          pcVar15 = *ppcVar28;\n          if (local_d04 == 0) {\n            pcVar14 = strpbrk(pcVar15,"*?[]\\");\n            if (pcVar14 == (char *)0x0) {\n              sVar17 = __ctype_get_mb_cur_max();\n              if (sVar17 == 1) {\n                fn = visit_substring_match_nocasefold_narrow;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_narrow;\n                }\n              }\n              else {\n                fn = visit_substring_match_nocasefold_wide;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_wide;\n                }\n              }\n              add_visitor(fn,pcVar15);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              add_visitor(visit_globmatch_casefold,pcVar15);\n            }\n          }\n          else {\n            bufp = (re_pattern_buffer *)xmalloc(0x40);\n            bufp->buffer = (re_dfa_t *)0x0;\n            bufp->allocated = 0;\n            bufp->used = 0;\n            bufp->syntax = 0;\n            bufp->fastmap = (char *)0x0;\n            bufp->translate = (uchar *)0x0;\n            bufp->re_nsub = 0;\n            *(undefined8 *)&bufp->field_0x38 = 0;\n            rpl_re_set_syntax((long)(int)uVar9);\n            bufp->allocated = 100;\n            prVar13 = (re_dfa_t *)xmalloc(100);\n            bufp->buffer = prVar13;\n            bufp->fastmap = (char *)0x0;\n            bufp->syntax = (long)(int)uVar9;\n            bufp->translate = (uchar *)0x0;\n            uVar27 = 0xffffffffffffffff;\n            pcVar14 = pcVar15;\n            do {\n              if (uVar27 == 0) break;\n              uVar27 = uVar27 - 1;\n              cVar1 = *pcVar14;\n              pcVar14 = pcVar14 + (ulong)bVar29 * -2 + 1;\n            } while (cVar1 != '\0');\n            pcVar14 = rpl_re_compile_pattern(pcVar15,~uVar27 - 1,bufp);\n            if (pcVar14 == (char *)0x0) {\n              add_visitor(visit_regex,bufp);\n            }\n            else {\n              error(1,0,&DAT_001207c7,pcVar14);\nLAB_00104ee7:\n              add_visitor(visit_globmatch_nofold,pcVar15);\n            }\n          }\n          ppcVar28 = ppcVar28 + 1;\n        }" { (expression_statement "results_were_filtered = true;" (assignment_expression "results_were_filtered = true" identifier = true) ;) (expression_statement "pcVar15 = *ppcVar28;" (assignment_expression "pcVar15 = *ppcVar28" identifier = (pointer_expression "*ppcVar28" * identifier)) ;) (if_statement "if (local_d04 == 0) {\n            pcVar14 = strpbrk(pcVar15,"*?[]\\");\n            if (pcVar14 == (char *)0x0) {\n              sVar17 = __ctype_get_mb_cur_max();\n              if (sVar17 == 1) {\n                fn = visit_substring_match_nocasefold_narrow;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_narrow;\n                }\n              }\n              else {\n                fn = visit_substring_match_nocasefold_wide;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_wide;\n                }\n              }\n              add_visitor(fn,pcVar15);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              add_visitor(visit_globmatch_casefold,pcVar15);\n            }\n          }\n          else {\n            bufp = (re_pattern_buffer *)xmalloc(0x40);\n            bufp->buffer = (re_dfa_t *)0x0;\n            bufp->allocated = 0;\n            bufp->used = 0;\n            bufp->syntax = 0;\n            bufp->fastmap = (char *)0x0;\n            bufp->translate = (uchar *)0x0;\n            bufp->re_nsub = 0;\n            *(undefined8 *)&bufp->field_0x38 = 0;\n            rpl_re_set_syntax((long)(int)uVar9);\n            bufp->allocated = 100;\n            prVar13 = (re_dfa_t *)xmalloc(100);\n            bufp->buffer = prVar13;\n            bufp->fastmap = (char *)0x0;\n            bufp->syntax = (long)(int)uVar9;\n            bufp->translate = (uchar *)0x0;\n            uVar27 = 0xffffffffffffffff;\n            pcVar14 = pcVar15;\n            do {\n              if (uVar27 == 0) break;\n              uVar27 = uVar27 - 1;\n              cVar1 = *pcVar14;\n              pcVar14 = pcVar14 + (ulong)bVar29 * -2 + 1;\n            } while (cVar1 != '\0');\n            pcVar14 = rpl_re_compile_pattern(pcVar15,~uVar27 - 1,bufp);\n            if (pcVar14 == (char *)0x0) {\n              add_visitor(visit_regex,bufp);\n            }\n            else {\n              error(1,0,&DAT_001207c7,pcVar14);\nLAB_00104ee7:\n              add_visitor(visit_globmatch_nofold,pcVar15);\n            }\n          }" if (parenthesized_expression "(local_d04 == 0)" ( (binary_expression "local_d04 == 0" identifier == number_literal) )) (compound_statement "{\n            pcVar14 = strpbrk(pcVar15,"*?[]\\");\n            if (pcVar14 == (char *)0x0) {\n              sVar17 = __ctype_get_mb_cur_max();\n              if (sVar17 == 1) {\n                fn = visit_substring_match_nocasefold_narrow;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_narrow;\n                }\n              }\n              else {\n                fn = visit_substring_match_nocasefold_wide;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_wide;\n                }\n              }\n              add_visitor(fn,pcVar15);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              add_visitor(visit_globmatch_casefold,pcVar15);\n            }\n          }" { (expression_statement "pcVar14 = strpbrk(pcVar15,"*?[]\\");" (assignment_expression "pcVar14 = strpbrk(pcVar15,"*?[]\\")" identifier = (call_expression "strpbrk(pcVar15,"*?[]\\")" identifier (argument_list "(pcVar15,"*?[]\\")" ( identifier , (string_literal ""*?[]\\"" " string_content escape_sequence ") )))) ;) (if_statement "if (pcVar14 == (char *)0x0) {\n              sVar17 = __ctype_get_mb_cur_max();\n              if (sVar17 == 1) {\n                fn = visit_substring_match_nocasefold_narrow;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_narrow;\n                }\n              }\n              else {\n                fn = visit_substring_match_nocasefold_wide;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_wide;\n                }\n              }\n              add_visitor(fn,pcVar15);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              add_visitor(visit_globmatch_casefold,pcVar15);\n            }" if (parenthesized_expression "(pcVar14 == (char *)0x0)" ( (binary_expression "pcVar14 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              sVar17 = __ctype_get_mb_cur_max();\n              if (sVar17 == 1) {\n                fn = visit_substring_match_nocasefold_narrow;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_narrow;\n                }\n              }\n              else {\n                fn = visit_substring_match_nocasefold_wide;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_wide;\n                }\n              }\n              add_visitor(fn,pcVar15);\n            }" { (expression_statement "sVar17 = __ctype_get_mb_cur_max();" (assignment_expression "sVar17 = __ctype_get_mb_cur_max()" identifier = (call_expression "__ctype_get_mb_cur_max()" identifier (argument_list "()" ( )))) ;) (if_statement "if (sVar17 == 1) {\n                fn = visit_substring_match_nocasefold_narrow;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_narrow;\n                }\n              }\n              else {\n                fn = visit_substring_match_nocasefold_wide;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_wide;\n                }\n              }" if (parenthesized_expression "(sVar17 == 1)" ( (binary_expression "sVar17 == 1" identifier == number_literal) )) (compound_statement "{\n                fn = visit_substring_match_nocasefold_narrow;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_narrow;\n                }\n              }" { (expression_statement "fn = visit_substring_match_nocasefold_narrow;" (assignment_expression "fn = visit_substring_match_nocasefold_narrow" identifier = identifier) ;) (if_statement "if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_narrow;\n                }" if (parenthesized_expression "(unaff_R15D != 0)" ( (binary_expression "unaff_R15D != 0" identifier != number_literal) )) (compound_statement "{\n                  fn = visit_substring_match_casefold_narrow;\n                }" { (expression_statement "fn = visit_substring_match_casefold_narrow;" (assignment_expression "fn = visit_substring_match_casefold_narrow" identifier = identifier) ;) })) }) (else_clause "else {\n                fn = visit_substring_match_nocasefold_wide;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_wide;\n                }\n              }" else (compound_statement "{\n                fn = visit_substring_match_nocasefold_wide;\n                if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_wide;\n                }\n              }" { (expression_statement "fn = visit_substring_match_nocasefold_wide;" (assignment_expression "fn = visit_substring_match_nocasefold_wide" identifier = identifier) ;) (if_statement "if (unaff_R15D != 0) {\n                  fn = visit_substring_match_casefold_wide;\n                }" if (parenthesized_expression "(unaff_R15D != 0)" ( (binary_expression "unaff_R15D != 0" identifier != number_literal) )) (compound_statement "{\n                  fn = visit_substring_match_casefold_wide;\n                }" { (expression_statement "fn = visit_substring_match_casefold_wide;" (assignment_expression "fn = visit_substring_match_casefold_wide" identifier = identifier) ;) })) }))) (expression_statement "add_visitor(fn,pcVar15);" (call_expression "add_visitor(fn,pcVar15)" identifier (argument_list "(fn,pcVar15)" ( identifier , identifier ))) ;) }) (else_clause "else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              add_visitor(visit_globmatch_casefold,pcVar15);\n            }" else (compound_statement "{\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              add_visitor(visit_globmatch_casefold,pcVar15);\n            }" { (if_statement "if (unaff_R15D == 0) goto LAB_00104ee7;" if (parenthesized_expression "(unaff_R15D == 0)" ( (binary_expression "unaff_R15D == 0" identifier == number_literal) )) (goto_statement "goto LAB_00104ee7;" goto statement_identifier ;)) (expression_statement "add_visitor(visit_globmatch_casefold,pcVar15);" (call_expression "add_visitor(visit_globmatch_casefold,pcVar15)" identifier (argument_list "(visit_globmatch_casefold,pcVar15)" ( identifier , identifier ))) ;) }))) }) (else_clause "else {\n            bufp = (re_pattern_buffer *)xmalloc(0x40);\n            bufp->buffer = (re_dfa_t *)0x0;\n            bufp->allocated = 0;\n            bufp->used = 0;\n            bufp->syntax = 0;\n            bufp->fastmap = (char *)0x0;\n            bufp->translate = (uchar *)0x0;\n            bufp->re_nsub = 0;\n            *(undefined8 *)&bufp->field_0x38 = 0;\n            rpl_re_set_syntax((long)(int)uVar9);\n            bufp->allocated = 100;\n            prVar13 = (re_dfa_t *)xmalloc(100);\n            bufp->buffer = prVar13;\n            bufp->fastmap = (char *)0x0;\n            bufp->syntax = (long)(int)uVar9;\n            bufp->translate = (uchar *)0x0;\n            uVar27 = 0xffffffffffffffff;\n            pcVar14 = pcVar15;\n            do {\n              if (uVar27 == 0) break;\n              uVar27 = uVar27 - 1;\n              cVar1 = *pcVar14;\n              pcVar14 = pcVar14 + (ulong)bVar29 * -2 + 1;\n            } while (cVar1 != '\0');\n            pcVar14 = rpl_re_compile_pattern(pcVar15,~uVar27 - 1,bufp);\n            if (pcVar14 == (char *)0x0) {\n              add_visitor(visit_regex,bufp);\n            }\n            else {\n              error(1,0,&DAT_001207c7,pcVar14);\nLAB_00104ee7:\n              add_visitor(visit_globmatch_nofold,pcVar15);\n            }\n          }" else (compound_statement "{\n            bufp = (re_pattern_buffer *)xmalloc(0x40);\n            bufp->buffer = (re_dfa_t *)0x0;\n            bufp->allocated = 0;\n            bufp->used = 0;\n            bufp->syntax = 0;\n            bufp->fastmap = (char *)0x0;\n            bufp->translate = (uchar *)0x0;\n            bufp->re_nsub = 0;\n            *(undefined8 *)&bufp->field_0x38 = 0;\n            rpl_re_set_syntax((long)(int)uVar9);\n            bufp->allocated = 100;\n            prVar13 = (re_dfa_t *)xmalloc(100);\n            bufp->buffer = prVar13;\n            bufp->fastmap = (char *)0x0;\n            bufp->syntax = (long)(int)uVar9;\n            bufp->translate = (uchar *)0x0;\n            uVar27 = 0xffffffffffffffff;\n            pcVar14 = pcVar15;\n            do {\n              if (uVar27 == 0) break;\n              uVar27 = uVar27 - 1;\n              cVar1 = *pcVar14;\n              pcVar14 = pcVar14 + (ulong)bVar29 * -2 + 1;\n            } while (cVar1 != '\0');\n            pcVar14 = rpl_re_compile_pattern(pcVar15,~uVar27 - 1,bufp);\n            if (pcVar14 == (char *)0x0) {\n              add_visitor(visit_regex,bufp);\n            }\n            else {\n              error(1,0,&DAT_001207c7,pcVar14);\nLAB_00104ee7:\n              add_visitor(visit_globmatch_nofold,pcVar15);\n            }\n          }" { (expression_statement "bufp = (re_pattern_buffer *)xmalloc(0x40);" (assignment_expression "bufp = (re_pattern_buffer *)xmalloc(0x40)" identifier = (cast_expression "(re_pattern_buffer *)xmalloc(0x40)" ( (type_descriptor "re_pattern_buffer *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(0x40)" identifier (argument_list "(0x40)" ( number_literal ))))) ;) (expression_statement "bufp->buffer = (re_dfa_t *)0x0;" (assignment_expression "bufp->buffer = (re_dfa_t *)0x0" (field_expression "bufp->buffer" identifier -> field_identifier) = (cast_expression "(re_dfa_t *)0x0" ( (type_descriptor "re_dfa_t *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "bufp->allocated = 0;" (assignment_expression "bufp->allocated = 0" (field_expression "bufp->allocated" identifier -> field_identifier) = number_literal) ;) (expression_statement "bufp->used = 0;" (assignment_expression "bufp->used = 0" (field_expression "bufp->used" identifier -> field_identifier) = number_literal) ;) (expression_statement "bufp->syntax = 0;" (assignment_expression "bufp->syntax = 0" (field_expression "bufp->syntax" identifier -> field_identifier) = number_literal) ;) (expression_statement "bufp->fastmap = (char *)0x0;" (assignment_expression "bufp->fastmap = (char *)0x0" (field_expression "bufp->fastmap" identifier -> field_identifier) = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "bufp->translate = (uchar *)0x0;" (assignment_expression "bufp->translate = (uchar *)0x0" (field_expression "bufp->translate" identifier -> field_identifier) = (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "bufp->re_nsub = 0;" (assignment_expression "bufp->re_nsub = 0" (field_expression "bufp->re_nsub" identifier -> field_identifier) = number_literal) ;) (expression_statement "*(undefined8 *)&bufp->field_0x38 = 0;" (assignment_expression "*(undefined8 *)&bufp->field_0x38 = 0" (pointer_expression "*(undefined8 *)&bufp->field_0x38" * (cast_expression "(undefined8 *)&bufp->field_0x38" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&bufp->field_0x38" & (field_expression "bufp->field_0x38" identifier -> field_identifier)))) = number_literal) ;) (expression_statement "rpl_re_set_syntax((long)(int)uVar9);" (call_expression "rpl_re_set_syntax((long)(int)uVar9)" identifier (argument_list "((long)(int)uVar9)" ( (cast_expression "(long)(int)uVar9" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)uVar9" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ;) (expression_statement "bufp->allocated = 100;" (assignment_expression "bufp->allocated = 100" (field_expression "bufp->allocated" identifier -> field_identifier) = number_literal) ;) (expression_statement "prVar13 = (re_dfa_t *)xmalloc(100);" (assignment_expression "prVar13 = (re_dfa_t *)xmalloc(100)" identifier = (cast_expression "(re_dfa_t *)xmalloc(100)" ( (type_descriptor "re_dfa_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(100)" identifier (argument_list "(100)" ( number_literal ))))) ;) (expression_statement "bufp->buffer = prVar13;" (assignment_expression "bufp->buffer = prVar13" (field_expression "bufp->buffer" identifier -> field_identifier) = identifier) ;) (expression_statement "bufp->fastmap = (char *)0x0;" (assignment_expression "bufp->fastmap = (char *)0x0" (field_expression "bufp->fastmap" identifier -> field_identifier) = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "bufp->syntax = (long)(int)uVar9;" (assignment_expression "bufp->syntax = (long)(int)uVar9" (field_expression "bufp->syntax" identifier -> field_identifier) = (cast_expression "(long)(int)uVar9" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)uVar9" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "bufp->translate = (uchar *)0x0;" (assignment_expression "bufp->translate = (uchar *)0x0" (field_expression "bufp->translate" identifier -> field_identifier) = (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar27 = 0xffffffffffffffff;" (assignment_expression "uVar27 = 0xffffffffffffffff" identifier = number_literal) ;) (expression_statement "pcVar14 = pcVar15;" (assignment_expression "pcVar14 = pcVar15" identifier = identifier) ;) (do_statement "do {\n              if (uVar27 == 0) break;\n              uVar27 = uVar27 - 1;\n              cVar1 = *pcVar14;\n              pcVar14 = pcVar14 + (ulong)bVar29 * -2 + 1;\n            } while (cVar1 != '\0');" do (compound_statement "{\n              if (uVar27 == 0) break;\n              uVar27 = uVar27 - 1;\n              cVar1 = *pcVar14;\n              pcVar14 = pcVar14 + (ulong)bVar29 * -2 + 1;\n            }" { (if_statement "if (uVar27 == 0) break;" if (parenthesized_expression "(uVar27 == 0)" ( (binary_expression "uVar27 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "uVar27 = uVar27 - 1;" (assignment_expression "uVar27 = uVar27 - 1" identifier = (binary_expression "uVar27 - 1" identifier - number_literal)) ;) (expression_statement "cVar1 = *pcVar14;" (assignment_expression "cVar1 = *pcVar14" identifier = (pointer_expression "*pcVar14" * identifier)) ;) (expression_statement "pcVar14 = pcVar14 + (ulong)bVar29 * -2 + 1;" (assignment_expression "pcVar14 = pcVar14 + (ulong)bVar29 * -2 + 1" identifier = (binary_expression "pcVar14 + (ulong)bVar29 * -2 + 1" (binary_expression "pcVar14 + (ulong)bVar29 * -2" identifier + (binary_expression "(ulong)bVar29 * -2" (cast_expression "(ulong)bVar29" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(cVar1 != '\0')" ( (binary_expression "cVar1 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) ;) (expression_statement "pcVar14 = rpl_re_compile_pattern(pcVar15,~uVar27 - 1,bufp);" (assignment_expression "pcVar14 = rpl_re_compile_pattern(pcVar15,~uVar27 - 1,bufp)" identifier = (call_expression "rpl_re_compile_pattern(pcVar15,~uVar27 - 1,bufp)" identifier (argument_list "(pcVar15,~uVar27 - 1,bufp)" ( identifier , (binary_expression "~uVar27 - 1" (unary_expression "~uVar27" ~ identifier) - number_literal) , identifier )))) ;) (if_statement "if (pcVar14 == (char *)0x0) {\n              add_visitor(visit_regex,bufp);\n            }\n            else {\n              error(1,0,&DAT_001207c7,pcVar14);\nLAB_00104ee7:\n              add_visitor(visit_globmatch_nofold,pcVar15);\n            }" if (parenthesized_expression "(pcVar14 == (char *)0x0)" ( (binary_expression "pcVar14 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              add_visitor(visit_regex,bufp);\n            }" { (expression_statement "add_visitor(visit_regex,bufp);" (call_expression "add_visitor(visit_regex,bufp)" identifier (argument_list "(visit_regex,bufp)" ( identifier , identifier ))) ;) }) (else_clause "else {\n              error(1,0,&DAT_001207c7,pcVar14);\nLAB_00104ee7:\n              add_visitor(visit_globmatch_nofold,pcVar15);\n            }" else (compound_statement "{\n              error(1,0,&DAT_001207c7,pcVar14);\nLAB_00104ee7:\n              add_visitor(visit_globmatch_nofold,pcVar15);\n            }" { (expression_statement "error(1,0,&DAT_001207c7,pcVar14);" (call_expression "error(1,0,&DAT_001207c7,pcVar14)" identifier (argument_list "(1,0,&DAT_001207c7,pcVar14)" ( number_literal , number_literal , (pointer_expression "&DAT_001207c7" & identifier) , identifier ))) ;) (labeled_statement "LAB_00104ee7:\n              add_visitor(visit_globmatch_nofold,pcVar15);" statement_identifier : (expression_statement "add_visitor(visit_globmatch_nofold,pcVar15);" (call_expression "add_visitor(visit_globmatch_nofold,pcVar15)" identifier (argument_list "(visit_globmatch_nofold,pcVar15)" ( identifier , identifier ))) ;)) }))) }))) (expression_statement "ppcVar28 = ppcVar28 + 1;" (assignment_expression "ppcVar28 = ppcVar28 + 1" identifier = (binary_expression "ppcVar28 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(ppcVar28 != argv + (long)(int)uVar10 + (ulong)(iVar8 - 1) + 1)" ( (binary_expression "ppcVar28 != argv + (long)(int)uVar10 + (ulong)(iVar8 - 1) + 1" identifier != (binary_expression "argv + (long)(int)uVar10 + (ulong)(iVar8 - 1) + 1" (binary_expression "argv + (long)(int)uVar10 + (ulong)(iVar8 - 1)" (binary_expression "argv + (long)(int)uVar10" identifier + (cast_expression "(long)(int)uVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)uVar10" ( (type_descriptor "int" primitive_type) ) identifier))) + (call_expression "(ulong)(iVar8 - 1)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(iVar8 - 1)" ( (binary_expression "iVar8 - 1" identifier - number_literal) )))) + number_literal)) )) ;) })) (expression_statement "pvVar6 = lastinspector;" (assignment_expression "pvVar6 = lastinspector" identifier = identifier) ;) (if_statement "if (local_cd4 == ACCEPT_EXISTING) {\n        results_were_filtered = true;\n        if (follow_symlinks == 0) {\n          add_visitor(visit_existing_nofollow,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_existing_follow,(void *)0x0);\n        }\n      }\n      else if (local_cd4 == ACCEPT_NON_EXISTING) {\n        results_were_filtered = true;\n        if (follow_symlinks == 0) {\n          add_visitor(visit_non_existing_nofollow,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_non_existing_follow,(void *)0x0);\n        }\n      }" if (parenthesized_expression "(local_cd4 == ACCEPT_EXISTING)" ( (binary_expression "local_cd4 == ACCEPT_EXISTING" identifier == identifier) )) (compound_statement "{\n        results_were_filtered = true;\n        if (follow_symlinks == 0) {\n          add_visitor(visit_existing_nofollow,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_existing_follow,(void *)0x0);\n        }\n      }" { (expression_statement "results_were_filtered = true;" (assignment_expression "results_were_filtered = true" identifier = true) ;) (if_statement "if (follow_symlinks == 0) {\n          add_visitor(visit_existing_nofollow,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_existing_follow,(void *)0x0);\n        }" if (parenthesized_expression "(follow_symlinks == 0)" ( (binary_expression "follow_symlinks == 0" identifier == number_literal) )) (compound_statement "{\n          add_visitor(visit_existing_nofollow,(void *)0x0);\n        }" { (expression_statement "add_visitor(visit_existing_nofollow,(void *)0x0);" (call_expression "add_visitor(visit_existing_nofollow,(void *)0x0)" identifier (argument_list "(visit_existing_nofollow,(void *)0x0)" ( identifier , (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ))) ;) }) (else_clause "else {\n          add_visitor(visit_existing_follow,(void *)0x0);\n        }" else (compound_statement "{\n          add_visitor(visit_existing_follow,(void *)0x0);\n        }" { (expression_statement "add_visitor(visit_existing_follow,(void *)0x0);" (call_expression "add_visitor(visit_existing_follow,(void *)0x0)" identifier (argument_list "(visit_existing_follow,(void *)0x0)" ( identifier , (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ))) ;) }))) }) (else_clause "else if (local_cd4 == ACCEPT_NON_EXISTING) {\n        results_were_filtered = true;\n        if (follow_symlinks == 0) {\n          add_visitor(visit_non_existing_nofollow,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_non_existing_follow,(void *)0x0);\n        }\n      }" else (if_statement "if (local_cd4 == ACCEPT_NON_EXISTING) {\n        results_were_filtered = true;\n        if (follow_symlinks == 0) {\n          add_visitor(visit_non_existing_nofollow,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_non_existing_follow,(void *)0x0);\n        }\n      }" if (parenthesized_expression "(local_cd4 == ACCEPT_NON_EXISTING)" ( (binary_expression "local_cd4 == ACCEPT_NON_EXISTING" identifier == identifier) )) (compound_statement "{\n        results_were_filtered = true;\n        if (follow_symlinks == 0) {\n          add_visitor(visit_non_existing_nofollow,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_non_existing_follow,(void *)0x0);\n        }\n      }" { (expression_statement "results_were_filtered = true;" (assignment_expression "results_were_filtered = true" identifier = true) ;) (if_statement "if (follow_symlinks == 0) {\n          add_visitor(visit_non_existing_nofollow,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_non_existing_follow,(void *)0x0);\n        }" if (parenthesized_expression "(follow_symlinks == 0)" ( (binary_expression "follow_symlinks == 0" identifier == number_literal) )) (compound_statement "{\n          add_visitor(visit_non_existing_nofollow,(void *)0x0);\n        }" { (expression_statement "add_visitor(visit_non_existing_nofollow,(void *)0x0);" (call_expression "add_visitor(visit_non_existing_nofollow,(void *)0x0)" identifier (argument_list "(visit_non_existing_nofollow,(void *)0x0)" ( identifier , (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ))) ;) }) (else_clause "else {\n          add_visitor(visit_non_existing_follow,(void *)0x0);\n        }" else (compound_statement "{\n          add_visitor(visit_non_existing_follow,(void *)0x0);\n        }" { (expression_statement "add_visitor(visit_non_existing_follow,(void *)0x0);" (call_expression "add_visitor(visit_non_existing_follow,(void *)0x0)" identifier (argument_list "(visit_non_existing_follow,(void *)0x0)" ( identifier , (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ))) ;) }))) })))) (if_statement "if (local_cec != 0) {\n        add_visitor(visit_stats,&statistics);\n      }" if (parenthesized_expression "(local_cec != 0)" ( (binary_expression "local_cec != 0" identifier != number_literal) )) (compound_statement "{\n        add_visitor(visit_stats,&statistics);\n      }" { (expression_statement "add_visitor(visit_stats,&statistics);" (call_expression "add_visitor(visit_stats,&statistics)" identifier (argument_list "(visit_stats,&statistics)" ( identifier , (pointer_expression "&statistics" & identifier) ))) ;) })) (if_statement "if (local_cb0 != 0) {\n        if (print_quoted_filename == false) {\n          add_visitor(visit_justprint_unquoted,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_justprint_quoted,(void *)0x0);\n        }\n      }" if (parenthesized_expression "(local_cb0 != 0)" ( (binary_expression "local_cb0 != 0" identifier != number_literal) )) (compound_statement "{\n        if (print_quoted_filename == false) {\n          add_visitor(visit_justprint_unquoted,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_justprint_quoted,(void *)0x0);\n        }\n      }" { (if_statement "if (print_quoted_filename == false) {\n          add_visitor(visit_justprint_unquoted,(void *)0x0);\n        }\n        else {\n          add_visitor(visit_justprint_quoted,(void *)0x0);\n        }" if (parenthesized_expression "(print_quoted_filename == false)" ( (binary_expression "print_quoted_filename == false" identifier == false) )) (compound_statement "{\n          add_visitor(visit_justprint_unquoted,(void *)0x0);\n        }" { (expression_statement "add_visitor(visit_justprint_unquoted,(void *)0x0);" (call_expression "add_visitor(visit_justprint_unquoted,(void *)0x0)" identifier (argument_list "(visit_justprint_unquoted,(void *)0x0)" ( identifier , (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ))) ;) }) (else_clause "else {\n          add_visitor(visit_justprint_quoted,(void *)0x0);\n        }" else (compound_statement "{\n          add_visitor(visit_justprint_quoted,(void *)0x0);\n        }" { (expression_statement "add_visitor(visit_justprint_quoted,(void *)0x0);" (call_expression "add_visitor(visit_justprint_quoted,(void *)0x0)" identifier (argument_list "(visit_justprint_quoted,(void *)0x0)" ( identifier , (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ))) ;) }))) })) (if_statement "if (local_cd8 == 0) {\n        add_visitor(visit_count,&limits);\n      }\n      else {\n        add_visitor(visit_limit,&limits);\n      }" if (parenthesized_expression "(local_cd8 == 0)" ( (binary_expression "local_cd8 == 0" identifier == number_literal) )) (compound_statement "{\n        add_visitor(visit_count,&limits);\n      }" { (expression_statement "add_visitor(visit_count,&limits);" (call_expression "add_visitor(visit_count,&limits)" identifier (argument_list "(visit_count,&limits)" ( identifier , (pointer_expression "&limits" & identifier) ))) ;) }) (else_clause "else {\n        add_visitor(visit_limit,&limits);\n      }" else (compound_statement "{\n        add_visitor(visit_limit,&limits);\n      }" { (expression_statement "add_visitor(visit_limit,&limits);" (call_expression "add_visitor(visit_limit,&limits)" identifier (argument_list "(visit_limit,&limits)" ( identifier , (pointer_expression "&limits" & identifier) ))) ;) }))) (expression_statement "pcVar15 = procdata.dbfile;" (assignment_expression "pcVar15 = procdata.dbfile" identifier = (field_expression "procdata.dbfile" identifier . field_identifier)) ;) (if_statement "if (iVar8 < 2) {\n        mainprocessor = process_simple;\n      }\n      else {\n        past_pat_inspector = pvVar6->next;\n        if (local_c98 == 0) {\n          mainprocessor = process_or;\n        }\n        else {\n          mainprocessor = process_and;\n        }\n      }" if (parenthesized_expression "(iVar8 < 2)" ( (binary_expression "iVar8 < 2" identifier < number_literal) )) (compound_statement "{\n        mainprocessor = process_simple;\n      }" { (expression_statement "mainprocessor = process_simple;" (assignment_expression "mainprocessor = process_simple" identifier = identifier) ;) }) (else_clause "else {\n        past_pat_inspector = pvVar6->next;\n        if (local_c98 == 0) {\n          mainprocessor = process_or;\n        }\n        else {\n          mainprocessor = process_and;\n        }\n      }" else (compound_statement "{\n        past_pat_inspector = pvVar6->next;\n        if (local_c98 == 0) {\n          mainprocessor = process_or;\n        }\n        else {\n          mainprocessor = process_and;\n        }\n      }" { (expression_statement "past_pat_inspector = pvVar6->next;" (assignment_expression "past_pat_inspector = pvVar6->next" identifier = (field_expression "pvVar6->next" identifier -> field_identifier)) ;) (if_statement "if (local_c98 == 0) {\n          mainprocessor = process_or;\n        }\n        else {\n          mainprocessor = process_and;\n        }" if (parenthesized_expression "(local_c98 == 0)" ( (binary_expression "local_c98 == 0" identifier == number_literal) )) (compound_statement "{\n          mainprocessor = process_or;\n        }" { (expression_statement "mainprocessor = process_or;" (assignment_expression "mainprocessor = process_or" identifier = identifier) ;) }) (else_clause "else {\n          mainprocessor = process_and;\n        }" else (compound_statement "{\n          mainprocessor = process_and;\n        }" { (expression_statement "mainprocessor = process_and;" (assignment_expression "mainprocessor = process_and" identifier = identifier) ;) }))) }))) (if_statement "if (local_cec != 0) {\n        uVar20 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar20,pcVar15,local_ca0);\n      }" if (parenthesized_expression "(local_cec != 0)" ( (binary_expression "local_cec != 0" identifier != number_literal) )) (compound_statement "{\n        uVar20 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar20,pcVar15,local_ca0);\n      }" { (expression_statement "uVar20 = dcgettext(0,"Database %s is in the %s format.\n",5);" (assignment_expression "uVar20 = dcgettext(0,"Database %s is in the %s format.\n",5)" identifier = (call_expression "dcgettext(0,"Database %s is in the %s format.\n",5)" identifier (argument_list "(0,"Database %s is in the %s format.\n",5)" ( number_literal , (string_literal ""Database %s is in the %s format.\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "__printf_chk(1,uVar20,pcVar15,local_ca0);" (call_expression "__printf_chk(1,uVar20,pcVar15,local_ca0)" identifier (argument_list "(1,uVar20,pcVar15,local_ca0)" ( number_literal , identifier , identifier , identifier ))) ;) })) (expression_statement "procdata.c = getc((FILE *)procdata.fp);" (assignment_expression "procdata.c = getc((FILE *)procdata.fp)" (field_expression "procdata.c" identifier . field_identifier) = (call_expression "getc((FILE *)procdata.fp)" identifier (argument_list "((FILE *)procdata.fp)" ( (cast_expression "(FILE *)procdata.fp" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "procdata.fp" identifier . field_identifier)) )))) ;) (if_statement "if ((procdata.c != -1) && (local_cac != 0)) {\n        ungetc(procdata.c,(FILE *)procdata.fp);\n        procdata.c = 0;\n      }" if (parenthesized_expression "((procdata.c != -1) && (local_cac != 0))" ( (binary_expression "(procdata.c != -1) && (local_cac != 0)" (parenthesized_expression "(procdata.c != -1)" ( (binary_expression "procdata.c != -1" (field_expression "procdata.c" identifier . field_identifier) != number_literal) )) && (parenthesized_expression "(local_cac != 0)" ( (binary_expression "local_cac != 0" identifier != number_literal) ))) )) (compound_statement "{\n        ungetc(procdata.c,(FILE *)procdata.fp);\n        procdata.c = 0;\n      }" { (expression_statement "ungetc(procdata.c,(FILE *)procdata.fp);" (call_expression "ungetc(procdata.c,(FILE *)procdata.fp)" identifier (argument_list "(procdata.c,(FILE *)procdata.fp)" ( (field_expression "procdata.c" identifier . field_identifier) , (cast_expression "(FILE *)procdata.fp" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "procdata.fp" identifier . field_identifier)) ))) ;) (expression_statement "procdata.c = 0;" (assignment_expression "procdata.c = 0" (field_expression "procdata.c" identifier . field_identifier) = number_literal) ;) })) (do_statement "do {\n        if (procdata.c == -1) break;\n        iVar26 = (*mainprocessor)(&procdata);\n      } while (iVar26 != 8);" do (compound_statement "{\n        if (procdata.c == -1) break;\n        iVar26 = (*mainprocessor)(&procdata);\n      }" { (if_statement "if (procdata.c == -1) break;" if (parenthesized_expression "(procdata.c == -1)" ( (binary_expression "procdata.c == -1" (field_expression "procdata.c" identifier . field_identifier) == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar26 = (*mainprocessor)(&procdata);" (assignment_expression "iVar26 = (*mainprocessor)(&procdata)" identifier = (call_expression "(*mainprocessor)(&procdata)" (parenthesized_expression "(*mainprocessor)" ( (pointer_expression "*mainprocessor" * identifier) )) (argument_list "(&procdata)" ( (pointer_expression "&procdata" & identifier) )))) ;) }) while (parenthesized_expression "(iVar26 != 8)" ( (binary_expression "iVar26 != 8" identifier != number_literal) )) ;) (if_statement "if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar20 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar19 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (procdata.endian_state == GetwordEndianStateNative) {\n            __printf_chk(1,&DAT_001207c7,uVar20);\n          }\n          else if (procdata.endian_state == GetwordEndianStateSwab) {\n            __printf_chk(1,&DAT_001207c7,uVar19);\n          }\n          else {\n            uVar20 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar20);\n          }\n        }\n        if (local_cc0 != (char **)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (char **)0x0) &&\n             (__tp = localtime((time_t *)local_cc0), __tp != (tm *)0x0)) {\n            sVar17 = strftime(hbuf4,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar17 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (hbuf4[0x13] != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (hbuf4[0x12] == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            pcVar15 = local_cc0[1];\n            uVar20 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar20,hbuf4,pcVar15);\n            sVar17 = strftime(hbuf4,0x14,"%z",__tp);\n            if (sVar17 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",hbuf4);\n          }\n          pcVar15 = human_readable(local_cb8,hbuf1,0,1,1);\n          uVar20 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar20,pcVar15);\n          pcVar15 = human_readable(statistics.total_filename_count,hbuf1,0,1,1);\n          if (results_were_filtered == false) {\n            uVar20 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar20 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar20,pcVar15);\n          pcVar15 = human_readable(statistics.highbit_filename_count,hbuf4,0,1,1);\n          pcVar14 = human_readable(statistics.newline_count,hbuf3,0,1,1);\n          pcVar21 = human_readable(statistics.whitespace_count,hbuf2,0,1,1);\n          pcVar22 = human_readable(statistics.total_filename_length,hbuf1,0,1,1);\n          uVar20 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar20,pcVar22,pcVar21,pcVar14,pcVar15);\n          if (iVar8 == 0) {\n            if (results_were_filtered == false) {\n              if (statistics.total_filename_length == 0) {\n                uVar20 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar20);\n              }\n              else {\n                local_ce8 = (double)statistics.total_filename_length;\n                uVar20 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar20)\n                ;\n              }\n            }\n            else {\n              uVar20 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar20);\n            }\n          }\n          putchar(10);\n        }\n      }" if (parenthesized_expression "(local_cec != 0)" ( (binary_expression "local_cec != 0" identifier != number_literal) )) (compound_statement "{\n        if (local_ca8 != 0) {\n          uVar20 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar19 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (procdata.endian_state == GetwordEndianStateNative) {\n            __printf_chk(1,&DAT_001207c7,uVar20);\n          }\n          else if (procdata.endian_state == GetwordEndianStateSwab) {\n            __printf_chk(1,&DAT_001207c7,uVar19);\n          }\n          else {\n            uVar20 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar20);\n          }\n        }\n        if (local_cc0 != (char **)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (char **)0x0) &&\n             (__tp = localtime((time_t *)local_cc0), __tp != (tm *)0x0)) {\n            sVar17 = strftime(hbuf4,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar17 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (hbuf4[0x13] != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (hbuf4[0x12] == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            pcVar15 = local_cc0[1];\n            uVar20 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar20,hbuf4,pcVar15);\n            sVar17 = strftime(hbuf4,0x14,"%z",__tp);\n            if (sVar17 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",hbuf4);\n          }\n          pcVar15 = human_readable(local_cb8,hbuf1,0,1,1);\n          uVar20 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar20,pcVar15);\n          pcVar15 = human_readable(statistics.total_filename_count,hbuf1,0,1,1);\n          if (results_were_filtered == false) {\n            uVar20 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar20 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar20,pcVar15);\n          pcVar15 = human_readable(statistics.highbit_filename_count,hbuf4,0,1,1);\n          pcVar14 = human_readable(statistics.newline_count,hbuf3,0,1,1);\n          pcVar21 = human_readable(statistics.whitespace_count,hbuf2,0,1,1);\n          pcVar22 = human_readable(statistics.total_filename_length,hbuf1,0,1,1);\n          uVar20 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar20,pcVar22,pcVar21,pcVar14,pcVar15);\n          if (iVar8 == 0) {\n            if (results_were_filtered == false) {\n              if (statistics.total_filename_length == 0) {\n                uVar20 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar20);\n              }\n              else {\n                local_ce8 = (double)statistics.total_filename_length;\n                uVar20 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar20)\n                ;\n              }\n            }\n            else {\n              uVar20 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar20);\n            }\n          }\n          putchar(10);\n        }\n      }" { (if_statement "if (local_ca8 != 0) {\n          uVar20 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar19 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (procdata.endian_state == GetwordEndianStateNative) {\n            __printf_chk(1,&DAT_001207c7,uVar20);\n          }\n          else if (procdata.endian_state == GetwordEndianStateSwab) {\n            __printf_chk(1,&DAT_001207c7,uVar19);\n          }\n          else {\n            uVar20 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar20);\n          }\n        }" if (parenthesized_expression "(local_ca8 != 0)" ( (binary_expression "local_ca8 != 0" identifier != number_literal) )) (compound_statement "{\n          uVar20 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar19 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (procdata.endian_state == GetwordEndianStateNative) {\n            __printf_chk(1,&DAT_001207c7,uVar20);\n          }\n          else if (procdata.endian_state == GetwordEndianStateSwab) {\n            __printf_chk(1,&DAT_001207c7,uVar19);\n          }\n          else {\n            uVar20 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar20);\n          }\n        }" { (expression_statement "uVar20 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);" (assignment_expression "uVar20 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5)" identifier = (call_expression "dcgettext(0,"The database has little-endian machine-word encoding.\n",5)" identifier (argument_list "(0,"The database has little-endian machine-word encoding.\n",5)" ( number_literal , (string_literal ""The database has little-endian machine-word encoding.\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "uVar19 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);" (assignment_expression "uVar19 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5)" identifier = (call_expression "dcgettext(0,"The database has big-endian machine-word encoding.\n",5)" identifier (argument_list "(0,"The database has big-endian machine-word encoding.\n",5)" ( number_literal , (string_literal ""The database has big-endian machine-word encoding.\n"" " string_content escape_sequence ") , number_literal )))) ;) (if_statement "if (procdata.endian_state == GetwordEndianStateNative) {\n            __printf_chk(1,&DAT_001207c7,uVar20);\n          }\n          else if (procdata.endian_state == GetwordEndianStateSwab) {\n            __printf_chk(1,&DAT_001207c7,uVar19);\n          }\n          else {\n            uVar20 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar20);\n          }" if (parenthesized_expression "(procdata.endian_state == GetwordEndianStateNative)" ( (binary_expression "procdata.endian_state == GetwordEndianStateNative" (field_expression "procdata.endian_state" identifier . field_identifier) == identifier) )) (compound_statement "{\n            __printf_chk(1,&DAT_001207c7,uVar20);\n          }" { (expression_statement "__printf_chk(1,&DAT_001207c7,uVar20);" (call_expression "__printf_chk(1,&DAT_001207c7,uVar20)" identifier (argument_list "(1,&DAT_001207c7,uVar20)" ( number_literal , (pointer_expression "&DAT_001207c7" & identifier) , identifier ))) ;) }) (else_clause "else if (procdata.endian_state == GetwordEndianStateSwab) {\n            __printf_chk(1,&DAT_001207c7,uVar19);\n          }\n          else {\n            uVar20 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar20);\n          }" else (if_statement "if (procdata.endian_state == GetwordEndianStateSwab) {\n            __printf_chk(1,&DAT_001207c7,uVar19);\n          }\n          else {\n            uVar20 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar20);\n          }" if (parenthesized_expression "(procdata.endian_state == GetwordEndianStateSwab)" ( (binary_expression "procdata.endian_state == GetwordEndianStateSwab" (field_expression "procdata.endian_state" identifier . field_identifier) == identifier) )) (compound_statement "{\n            __printf_chk(1,&DAT_001207c7,uVar19);\n          }" { (expression_statement "__printf_chk(1,&DAT_001207c7,uVar19);" (call_expression "__printf_chk(1,&DAT_001207c7,uVar19)" identifier (argument_list "(1,&DAT_001207c7,uVar19)" ( number_literal , (pointer_expression "&DAT_001207c7" & identifier) , identifier ))) ;) }) (else_clause "else {\n            uVar20 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar20);\n          }" else (compound_statement "{\n            uVar20 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar20);\n          }" { (expression_statement "uVar20 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);" (assignment_expression "uVar20 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5)" identifier = (call_expression "dcgettext(0,"The database machine-word encoding order is not obvious.\n",5)" identifier (argument_list "(0,"The database machine-word encoding order is not obvious.\n",5)" ( number_literal , (string_literal ""The database machine-word encoding order is not obvious.\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "__printf_chk(1,uVar20);" (call_expression "__printf_chk(1,uVar20)" identifier (argument_list "(1,uVar20)" ( number_literal , identifier ))) ;) }))))) })) (if_statement "if (local_cc0 != (char **)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (char **)0x0) &&\n             (__tp = localtime((time_t *)local_cc0), __tp != (tm *)0x0)) {\n            sVar17 = strftime(hbuf4,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar17 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (hbuf4[0x13] != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (hbuf4[0x12] == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            pcVar15 = local_cc0[1];\n            uVar20 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar20,hbuf4,pcVar15);\n            sVar17 = strftime(hbuf4,0x14,"%z",__tp);\n            if (sVar17 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",hbuf4);\n          }\n          pcVar15 = human_readable(local_cb8,hbuf1,0,1,1);\n          uVar20 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar20,pcVar15);\n          pcVar15 = human_readable(statistics.total_filename_count,hbuf1,0,1,1);\n          if (results_were_filtered == false) {\n            uVar20 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar20 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar20,pcVar15);\n          pcVar15 = human_readable(statistics.highbit_filename_count,hbuf4,0,1,1);\n          pcVar14 = human_readable(statistics.newline_count,hbuf3,0,1,1);\n          pcVar21 = human_readable(statistics.whitespace_count,hbuf2,0,1,1);\n          pcVar22 = human_readable(statistics.total_filename_length,hbuf1,0,1,1);\n          uVar20 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar20,pcVar22,pcVar21,pcVar14,pcVar15);\n          if (iVar8 == 0) {\n            if (results_were_filtered == false) {\n              if (statistics.total_filename_length == 0) {\n                uVar20 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar20);\n              }\n              else {\n                local_ce8 = (double)statistics.total_filename_length;\n                uVar20 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar20)\n                ;\n              }\n            }\n            else {\n              uVar20 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar20);\n            }\n          }\n          putchar(10);\n        }" if (parenthesized_expression "(local_cc0 != (char **)0x0 || local_cb8 != 0)" ( (binary_expression "local_cc0 != (char **)0x0 || local_cb8 != 0" (binary_expression "local_cc0 != (char **)0x0" identifier != (cast_expression "(char **)0x0" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) || (binary_expression "local_cb8 != 0" identifier != number_literal)) )) (compound_statement "{\n          if ((local_cc0 != (char **)0x0) &&\n             (__tp = localtime((time_t *)local_cc0), __tp != (tm *)0x0)) {\n            sVar17 = strftime(hbuf4,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar17 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (hbuf4[0x13] != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (hbuf4[0x12] == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            pcVar15 = local_cc0[1];\n            uVar20 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar20,hbuf4,pcVar15);\n            sVar17 = strftime(hbuf4,0x14,"%z",__tp);\n            if (sVar17 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",hbuf4);\n          }\n          pcVar15 = human_readable(local_cb8,hbuf1,0,1,1);\n          uVar20 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar20,pcVar15);\n          pcVar15 = human_readable(statistics.total_filename_count,hbuf1,0,1,1);\n          if (results_were_filtered == false) {\n            uVar20 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar20 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar20,pcVar15);\n          pcVar15 = human_readable(statistics.highbit_filename_count,hbuf4,0,1,1);\n          pcVar14 = human_readable(statistics.newline_count,hbuf3,0,1,1);\n          pcVar21 = human_readable(statistics.whitespace_count,hbuf2,0,1,1);\n          pcVar22 = human_readable(statistics.total_filename_length,hbuf1,0,1,1);\n          uVar20 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar20,pcVar22,pcVar21,pcVar14,pcVar15);\n          if (iVar8 == 0) {\n            if (results_were_filtered == false) {\n              if (statistics.total_filename_length == 0) {\n                uVar20 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar20);\n              }\n              else {\n                local_ce8 = (double)statistics.total_filename_length;\n                uVar20 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar20)\n                ;\n              }\n            }\n            else {\n              uVar20 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar20);\n            }\n          }\n          putchar(10);\n        }" { (if_statement "if ((local_cc0 != (char **)0x0) &&\n             (__tp = localtime((time_t *)local_cc0), __tp != (tm *)0x0)) {\n            sVar17 = strftime(hbuf4,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar17 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (hbuf4[0x13] != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (hbuf4[0x12] == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            pcVar15 = local_cc0[1];\n            uVar20 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar20,hbuf4,pcVar15);\n            sVar17 = strftime(hbuf4,0x14,"%z",__tp);\n            if (sVar17 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",hbuf4);\n          }" if (parenthesized_expression "((local_cc0 != (char **)0x0) &&\n             (__tp = localtime((time_t *)local_cc0), __tp != (tm *)0x0))" ( (binary_expression "(local_cc0 != (char **)0x0) &&\n             (__tp = localtime((time_t *)local_cc0), __tp != (tm *)0x0)" (parenthesized_expression "(local_cc0 != (char **)0x0)" ( (binary_expression "local_cc0 != (char **)0x0" identifier != (cast_expression "(char **)0x0" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) && (parenthesized_expression "(__tp = localtime((time_t *)local_cc0), __tp != (tm *)0x0)" ( (comma_expression "__tp = localtime((time_t *)local_cc0), __tp != (tm *)0x0" (assignment_expression "__tp = localtime((time_t *)local_cc0)" identifier = (call_expression "localtime((time_t *)local_cc0)" identifier (argument_list "((time_t *)local_cc0)" ( (cast_expression "(time_t *)local_cc0" ( (type_descriptor "time_t *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) , (binary_expression "__tp != (tm *)0x0" identifier != (cast_expression "(tm *)0x0" ( (type_descriptor "tm *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ))) )) (compound_statement "{\n            sVar17 = strftime(hbuf4,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar17 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (hbuf4[0x13] != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (hbuf4[0x12] == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            pcVar15 = local_cc0[1];\n            uVar20 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar20,hbuf4,pcVar15);\n            sVar17 = strftime(hbuf4,0x14,"%z",__tp);\n            if (sVar17 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",hbuf4);\n          }" { (expression_statement "sVar17 = strftime(hbuf4,0x14,"%Y:%m:%d %H:%M:%S",__tp);" (assignment_expression "sVar17 = strftime(hbuf4,0x14,"%Y:%m:%d %H:%M:%S",__tp)" identifier = (call_expression "strftime(hbuf4,0x14,"%Y:%m:%d %H:%M:%S",__tp)" identifier (argument_list "(hbuf4,0x14,"%Y:%m:%d %H:%M:%S",__tp)" ( identifier , number_literal , (string_literal ""%Y:%m:%d %H:%M:%S"" " string_content ") , identifier )))) ;) (if_statement "if (sVar17 != 0x13) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }" if (parenthesized_expression "(sVar17 != 0x13)" ( (binary_expression "sVar17 != 0x13" identifier != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }" { comment (expression_statement "__assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");" (call_expression "__assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats")" identifier (argument_list "("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats")" ( (string_literal ""printed == TIME_BUF_LEN-1"" " string_content ") , (string_literal ""locate.c"" " string_content ") , number_literal , (string_literal ""print_stats"" " string_content ") ))) ;) })) (if_statement "if (hbuf4[0x13] != '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }" if (parenthesized_expression "(hbuf4[0x13] != '\0')" ( (binary_expression "hbuf4[0x13] != '\0'" (subscript_expression "hbuf4[0x13]" identifier [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }" { comment (expression_statement "__assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");" (call_expression "__assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats")" identifier (argument_list "("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats")" ( (string_literal ""whenbuf[TIME_BUF_LEN-1] == 0"" " string_content ") , (string_literal ""locate.c"" " string_content ") , number_literal , (string_literal ""print_stats"" " string_content ") ))) ;) })) (if_statement "if (hbuf4[0x12] == '\0') {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }" if (parenthesized_expression "(hbuf4[0x12] == '\0')" ( (binary_expression "hbuf4[0x12] == '\0'" (subscript_expression "hbuf4[0x12]" identifier [ number_literal ]) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }" { comment (expression_statement "__assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");" (call_expression "__assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats")" identifier (argument_list "("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats")" ( (string_literal ""whenbuf[TIME_BUF_LEN-2] != 0"" " string_content ") , (string_literal ""locate.c"" " string_content ") , number_literal , (string_literal ""print_stats"" " string_content ") ))) ;) })) (expression_statement "pcVar15 = local_cc0[1];" (assignment_expression "pcVar15 = local_cc0[1]" identifier = (subscript_expression "local_cc0[1]" identifier [ number_literal ])) ;) (expression_statement "uVar20 = dcgettext(0,"Database was last modified at %s.%09ld",5);" (assignment_expression "uVar20 = dcgettext(0,"Database was last modified at %s.%09ld",5)" identifier = (call_expression "dcgettext(0,"Database was last modified at %s.%09ld",5)" identifier (argument_list "(0,"Database was last modified at %s.%09ld",5)" ( number_literal , (string_literal ""Database was last modified at %s.%09ld"" " string_content ") , number_literal )))) ;) (expression_statement "__printf_chk(1,uVar20,hbuf4,pcVar15);" (call_expression "__printf_chk(1,uVar20,hbuf4,pcVar15)" identifier (argument_list "(1,uVar20,hbuf4,pcVar15)" ( number_literal , identifier , identifier , identifier ))) ;) (expression_statement "sVar17 = strftime(hbuf4,0x14,"%z",__tp);" (assignment_expression "sVar17 = strftime(hbuf4,0x14,"%z",__tp)" identifier = (call_expression "strftime(hbuf4,0x14,"%z",__tp)" identifier (argument_list "(hbuf4,0x14,"%z",__tp)" ( identifier , number_literal , (string_literal ""%z"" " string_content ") , identifier )))) ;) (if_statement "if (sVar17 != 5) {\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }" if (parenthesized_expression "(sVar17 != 5)" ( (binary_expression "sVar17 != 5" identifier != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }" { comment (expression_statement "__assert_fail("printed == 5","locate.c",0x351,"print_stats");" (call_expression "__assert_fail("printed == 5","locate.c",0x351,"print_stats")" identifier (argument_list "("printed == 5","locate.c",0x351,"print_stats")" ( (string_literal ""printed == 5"" " string_content ") , (string_literal ""locate.c"" " string_content ") , number_literal , (string_literal ""print_stats"" " string_content ") ))) ;) })) (expression_statement "__printf_chk(1," %s\n",hbuf4);" (call_expression "__printf_chk(1," %s\n",hbuf4)" identifier (argument_list "(1," %s\n",hbuf4)" ( number_literal , (string_literal "" %s\n"" " string_content escape_sequence ") , identifier ))) ;) })) (expression_statement "pcVar15 = human_readable(local_cb8,hbuf1,0,1,1);" (assignment_expression "pcVar15 = human_readable(local_cb8,hbuf1,0,1,1)" identifier = (call_expression "human_readable(local_cb8,hbuf1,0,1,1)" identifier (argument_list "(local_cb8,hbuf1,0,1,1)" ( identifier , identifier , number_literal , number_literal , number_literal )))) ;) (expression_statement "uVar20 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);" (assignment_expression "uVar20 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5)" identifier = (call_expression "dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5)" identifier (argument_list "(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5)" ( number_literal , (string_literal ""Locate database size: %s byte\n"" " string_content escape_sequence ") , (string_literal ""Locate database size: %s bytes\n"" " string_content escape_sequence ") , identifier , number_literal )))) ;) (expression_statement "__printf_chk(1,uVar20,pcVar15);" (call_expression "__printf_chk(1,uVar20,pcVar15)" identifier (argument_list "(1,uVar20,pcVar15)" ( number_literal , identifier , identifier ))) ;) (expression_statement "pcVar15 = human_readable(statistics.total_filename_count,hbuf1,0,1,1);" (assignment_expression "pcVar15 = human_readable(statistics.total_filename_count,hbuf1,0,1,1)" identifier = (call_expression "human_readable(statistics.total_filename_count,hbuf1,0,1,1)" identifier (argument_list "(statistics.total_filename_count,hbuf1,0,1,1)" ( (field_expression "statistics.total_filename_count" identifier . field_identifier) , identifier , number_literal , number_literal , number_literal )))) ;) (if_statement "if (results_were_filtered == false) {\n            uVar20 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar20 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }" if (parenthesized_expression "(results_were_filtered == false)" ( (binary_expression "results_were_filtered == false" identifier == false) )) (compound_statement "{\n            uVar20 = dcgettext(0,"All Filenames: %s\n",5);\n          }" { (expression_statement "uVar20 = dcgettext(0,"All Filenames: %s\n",5);" (assignment_expression "uVar20 = dcgettext(0,"All Filenames: %s\n",5)" identifier = (call_expression "dcgettext(0,"All Filenames: %s\n",5)" identifier (argument_list "(0,"All Filenames: %s\n",5)" ( number_literal , (string_literal ""All Filenames: %s\n"" " string_content escape_sequence ") , number_literal )))) ;) }) (else_clause "else {\n            uVar20 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }" else (compound_statement "{\n            uVar20 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }" { (expression_statement "uVar20 = dcgettext(0,"Matching Filenames: %s\n",5);" (assignment_expression "uVar20 = dcgettext(0,"Matching Filenames: %s\n",5)" identifier = (call_expression "dcgettext(0,"Matching Filenames: %s\n",5)" identifier (argument_list "(0,"Matching Filenames: %s\n",5)" ( number_literal , (string_literal ""Matching Filenames: %s\n"" " string_content escape_sequence ") , number_literal )))) ;) }))) (expression_statement "__printf_chk(1,uVar20,pcVar15);" (call_expression "__printf_chk(1,uVar20,pcVar15)" identifier (argument_list "(1,uVar20,pcVar15)" ( number_literal , identifier , identifier ))) ;) (expression_statement "pcVar15 = human_readable(statistics.highbit_filename_count,hbuf4,0,1,1);" (assignment_expression "pcVar15 = human_readable(statistics.highbit_filename_count,hbuf4,0,1,1)" identifier = (call_expression "human_readable(statistics.highbit_filename_count,hbuf4,0,1,1)" identifier (argument_list "(statistics.highbit_filename_count,hbuf4,0,1,1)" ( (field_expression "statistics.highbit_filename_count" identifier . field_identifier) , identifier , number_literal , number_literal , number_literal )))) ;) (expression_statement "pcVar14 = human_readable(statistics.newline_count,hbuf3,0,1,1);" (assignment_expression "pcVar14 = human_readable(statistics.newline_count,hbuf3,0,1,1)" identifier = (call_expression "human_readable(statistics.newline_count,hbuf3,0,1,1)" identifier (argument_list "(statistics.newline_count,hbuf3,0,1,1)" ( (field_expression "statistics.newline_count" identifier . field_identifier) , identifier , number_literal , number_literal , number_literal )))) ;) (expression_statement "pcVar21 = human_readable(statistics.whitespace_count,hbuf2,0,1,1);" (assignment_expression "pcVar21 = human_readable(statistics.whitespace_count,hbuf2,0,1,1)" identifier = (call_expression "human_readable(statistics.whitespace_count,hbuf2,0,1,1)" identifier (argument_list "(statistics.whitespace_count,hbuf2,0,1,1)" ( (field_expression "statistics.whitespace_count" identifier . field_identifier) , identifier , number_literal , number_literal , number_literal )))) ;) (expression_statement "pcVar22 = human_readable(statistics.total_filename_length,hbuf1,0,1,1);" (assignment_expression "pcVar22 = human_readable(statistics.total_filename_length,hbuf1,0,1,1)" identifier = (call_expression "human_readable(statistics.total_filename_length,hbuf1,0,1,1)" identifier (argument_list "(statistics.total_filename_length,hbuf1,0,1,1)" ( (field_expression "statistics.total_filename_length" identifier . field_identifier) , identifier , number_literal , number_literal , number_literal )))) ;) (expression_statement "uVar20 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);" (assignment_expression "uVar20 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5)" identifier = (call_expression "dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5)" identifier (argument_list "(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5)" ( number_literal , (string_literal ""File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"" " string_content escape_sequence string_content escape_sequence escape_sequence escape_sequence string_content escape_sequence escape_sequence string_content escape_sequence escape_sequence string_content escape_sequence ") , number_literal )))) ;) (expression_statement "__printf_chk(1,uVar20,pcVar22,pcVar21,pcVar14,pcVar15);" (call_expression "__printf_chk(1,uVar20,pcVar22,pcVar21,pcVar14,pcVar15)" identifier (argument_list "(1,uVar20,pcVar22,pcVar21,pcVar14,pcVar15)" ( number_literal , identifier , identifier , identifier , identifier , identifier ))) ;) (if_statement "if (iVar8 == 0) {\n            if (results_were_filtered == false) {\n              if (statistics.total_filename_length == 0) {\n                uVar20 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar20);\n              }\n              else {\n                local_ce8 = (double)statistics.total_filename_length;\n                uVar20 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar20)\n                ;\n              }\n            }\n            else {\n              uVar20 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar20);\n            }\n          }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n            if (results_were_filtered == false) {\n              if (statistics.total_filename_length == 0) {\n                uVar20 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar20);\n              }\n              else {\n                local_ce8 = (double)statistics.total_filename_length;\n                uVar20 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar20)\n                ;\n              }\n            }\n            else {\n              uVar20 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar20);\n            }\n          }" { (if_statement "if (results_were_filtered == false) {\n              if (statistics.total_filename_length == 0) {\n                uVar20 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar20);\n              }\n              else {\n                local_ce8 = (double)statistics.total_filename_length;\n                uVar20 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar20)\n                ;\n              }\n            }\n            else {\n              uVar20 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar20);\n            }" if (parenthesized_expression "(results_were_filtered == false)" ( (binary_expression "results_were_filtered == false" identifier == false) )) (compound_statement "{\n              if (statistics.total_filename_length == 0) {\n                uVar20 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar20);\n              }\n              else {\n                local_ce8 = (double)statistics.total_filename_length;\n                uVar20 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar20)\n                ;\n              }\n            }" { (if_statement "if (statistics.total_filename_length == 0) {\n                uVar20 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar20);\n              }\n              else {\n                local_ce8 = (double)statistics.total_filename_length;\n                uVar20 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar20)\n                ;\n              }" if (parenthesized_expression "(statistics.total_filename_length == 0)" ( (binary_expression "statistics.total_filename_length == 0" (field_expression "statistics.total_filename_length" identifier . field_identifier) == number_literal) )) (compound_statement "{\n                uVar20 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar20);\n              }" { (expression_statement "uVar20 = dcgettext(0,"Compression ratio is undefined\n",5);" (assignment_expression "uVar20 = dcgettext(0,"Compression ratio is undefined\n",5)" identifier = (call_expression "dcgettext(0,"Compression ratio is undefined\n",5)" identifier (argument_list "(0,"Compression ratio is undefined\n",5)" ( number_literal , (string_literal ""Compression ratio is undefined\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "__printf_chk(1,uVar20);" (call_expression "__printf_chk(1,uVar20)" identifier (argument_list "(1,uVar20)" ( number_literal , identifier ))) ;) }) (else_clause "else {\n                local_ce8 = (double)statistics.total_filename_length;\n                uVar20 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar20)\n                ;\n              }" else (compound_statement "{\n                local_ce8 = (double)statistics.total_filename_length;\n                uVar20 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar20)\n                ;\n              }" { (expression_statement "local_ce8 = (double)statistics.total_filename_length;" (assignment_expression "local_ce8 = (double)statistics.total_filename_length" identifier = (cast_expression "(double)statistics.total_filename_length" ( (type_descriptor "double" primitive_type) ) (field_expression "statistics.total_filename_length" identifier . field_identifier))) ;) (expression_statement "uVar20 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);" (assignment_expression "uVar20 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5)" identifier = (call_expression "dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5)" identifier (argument_list "(0,"Compression ratio %4.2f%% (higher is better)\n",5)" ( number_literal , (string_literal ""Compression ratio %4.2f%% (higher is better)\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "__printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar20)\n                ;" (call_expression "__printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar20)" identifier (argument_list "(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar20)" ( (binary_expression "((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8" (parenthesized_expression "((local_ce8 - (double)local_cb8) * _DAT_0011eda0)" ( (binary_expression "(local_ce8 - (double)local_cb8) * _DAT_0011eda0" (parenthesized_expression "(local_ce8 - (double)local_cb8)" ( (binary_expression "local_ce8 - (double)local_cb8" identifier - (cast_expression "(double)local_cb8" ( (type_descriptor "double" primitive_type) ) identifier)) )) * identifier) )) / identifier) , number_literal , identifier ))) ;) }))) }) (else_clause "else {\n              uVar20 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar20);\n            }" else (compound_statement "{\n              uVar20 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar20);\n            }" { (expression_statement "uVar20 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);" (assignment_expression "uVar20 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5)" identifier = (call_expression "dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5)" identifier (argument_list "(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5)" ( number_literal , (string_literal ""Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "__printf_chk(1,uVar20);" (call_expression "__printf_chk(1,uVar20)" identifier (argument_list "(1,uVar20)" ( number_literal , identifier ))) ;) }))) })) (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;) })) })) (expression_statement "iVar8 = ferror((FILE *)procdata.fp);" (assignment_expression "iVar8 = ferror((FILE *)procdata.fp)" identifier = (call_expression "ferror((FILE *)procdata.fp)" identifier (argument_list "((FILE *)procdata.fp)" ( (cast_expression "(FILE *)procdata.fp" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "procdata.fp" identifier . field_identifier)) )))) ;) (expression_statement "uVar25 = limits.items_accepted;" (assignment_expression "uVar25 = limits.items_accepted" identifier = (field_expression "limits.items_accepted" identifier . field_identifier)) ;) (if_statement "if (iVar8 != 0) {\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        uVar25 = 0;\n      }" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (compound_statement "{\n        pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n        piVar16 = __errno_location();\n        error(0,*piVar16,&DAT_001207c7,pcVar15);\n        uVar25 = 0;\n      }" { (expression_statement "pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);" (assignment_expression "pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile)" identifier = (call_expression "quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile)" identifier (argument_list "(L'\0',locale_quoting_style,procdata.dbfile)" ( (char_literal "L'\0'" L' escape_sequence ') , identifier , (field_expression "procdata.dbfile" identifier . field_identifier) )))) ;) (expression_statement "piVar16 = __errno_location();" (assignment_expression "piVar16 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,*piVar16,&DAT_001207c7,pcVar15);" (call_expression "error(0,*piVar16,&DAT_001207c7,pcVar15)" identifier (argument_list "(0,*piVar16,&DAT_001207c7,pcVar15)" ( number_literal , (pointer_expression "*piVar16" * identifier) , (pointer_expression "&DAT_001207c7" & identifier) , identifier ))) ;) (expression_statement "uVar25 = 0;" (assignment_expression "uVar25 = 0" identifier = number_literal) ;) })) }) (else_clause "else {\n      ppuVar18 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar18 + (ulong)(byte)*pcVar15 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar26 = *pcVar15 + -0x30;\n      if (iVar26 < 2) {\n        if (iVar26 == 1) {\n          if (check_existence == ACCEPT_NON_EXISTING) {\n            uVar20 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar20);\n            uVar25 = 0;\n            goto LAB_0010514b;\n          }\n          if ((EVar5 != ACCEPT_EXISTING) &&\n             (local_cd4 = ACCEPT_EXISTING, local_cb0 != 0 || local_cec != 0)) {\n            pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n            uVar20 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar20,pcVar15);\n            local_cd4 = ACCEPT_EXISTING;\n          }\n        }\n        add_visitor(visit_locate02_format,(void *)0x0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n      uVar20 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar20,pcVar15,0);\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n      uVar20 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar20,pcVar15,iVar26);\n      uVar25 = 0;\n    }" else (compound_statement "{\n      ppuVar18 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar18 + (ulong)(byte)*pcVar15 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar26 = *pcVar15 + -0x30;\n      if (iVar26 < 2) {\n        if (iVar26 == 1) {\n          if (check_existence == ACCEPT_NON_EXISTING) {\n            uVar20 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar20);\n            uVar25 = 0;\n            goto LAB_0010514b;\n          }\n          if ((EVar5 != ACCEPT_EXISTING) &&\n             (local_cd4 = ACCEPT_EXISTING, local_cb0 != 0 || local_cec != 0)) {\n            pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n            uVar20 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar20,pcVar15);\n            local_cd4 = ACCEPT_EXISTING;\n          }\n        }\n        add_visitor(visit_locate02_format,(void *)0x0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n      uVar20 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar20,pcVar15,0);\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n      uVar20 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar20,pcVar15,iVar26);\n      uVar25 = 0;\n    }" { (expression_statement "ppuVar18 = __ctype_b_loc();" (assignment_expression "ppuVar18 = __ctype_b_loc()" identifier = (call_expression "__ctype_b_loc()" identifier (argument_list "()" ( )))) ;) (if_statement "if ((*(byte *)((long)*ppuVar18 + (ulong)(byte)*pcVar15 * 2 + 1) & 8) == 0) goto LAB_00105aa4;" if (parenthesized_expression "((*(byte *)((long)*ppuVar18 + (ulong)(byte)*pcVar15 * 2 + 1) & 8) == 0)" ( (binary_expression "(*(byte *)((long)*ppuVar18 + (ulong)(byte)*pcVar15 * 2 + 1) & 8) == 0" (parenthesized_expression "(*(byte *)((long)*ppuVar18 + (ulong)(byte)*pcVar15 * 2 + 1) & 8)" ( (binary_expression "*(byte *)((long)*ppuVar18 + (ulong)(byte)*pcVar15 * 2 + 1) & 8" (pointer_expression "*(byte *)((long)*ppuVar18 + (ulong)(byte)*pcVar15 * 2 + 1)" * (cast_expression "(byte *)((long)*ppuVar18 + (ulong)(byte)*pcVar15 * 2 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)*ppuVar18 + (ulong)(byte)*pcVar15 * 2 + 1)" ( (binary_expression "(long)*ppuVar18 + (ulong)(byte)*pcVar15 * 2 + 1" (binary_expression "(long)*ppuVar18 + (ulong)(byte)*pcVar15 * 2" (cast_expression "(long)*ppuVar18" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "*ppuVar18" * identifier)) + (binary_expression "(ulong)(byte)*pcVar15 * 2" (binary_expression "(ulong)(byte)*pcVar15" (call_expression "(ulong)(byte)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(byte)" ( identifier ))) * identifier) * number_literal)) + number_literal) )))) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00105aa4;" goto statement_identifier ;)) (expression_statement "iVar26 = *pcVar15 + -0x30;" (assignment_expression "iVar26 = *pcVar15 + -0x30" identifier = (binary_expression "*pcVar15 + -0x30" (pointer_expression "*pcVar15" * identifier) + number_literal)) ;) (if_statement "if (iVar26 < 2) {\n        if (iVar26 == 1) {\n          if (check_existence == ACCEPT_NON_EXISTING) {\n            uVar20 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar20);\n            uVar25 = 0;\n            goto LAB_0010514b;\n          }\n          if ((EVar5 != ACCEPT_EXISTING) &&\n             (local_cd4 = ACCEPT_EXISTING, local_cb0 != 0 || local_cec != 0)) {\n            pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n            uVar20 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar20,pcVar15);\n            local_cd4 = ACCEPT_EXISTING;\n          }\n        }\n        add_visitor(visit_locate02_format,(void *)0x0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }" if (parenthesized_expression "(iVar26 < 2)" ( (binary_expression "iVar26 < 2" identifier < number_literal) )) (compound_statement "{\n        if (iVar26 == 1) {\n          if (check_existence == ACCEPT_NON_EXISTING) {\n            uVar20 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar20);\n            uVar25 = 0;\n            goto LAB_0010514b;\n          }\n          if ((EVar5 != ACCEPT_EXISTING) &&\n             (local_cd4 = ACCEPT_EXISTING, local_cb0 != 0 || local_cec != 0)) {\n            pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n            uVar20 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar20,pcVar15);\n            local_cd4 = ACCEPT_EXISTING;\n          }\n        }\n        add_visitor(visit_locate02_format,(void *)0x0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }" { (if_statement "if (iVar26 == 1) {\n          if (check_existence == ACCEPT_NON_EXISTING) {\n            uVar20 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar20);\n            uVar25 = 0;\n            goto LAB_0010514b;\n          }\n          if ((EVar5 != ACCEPT_EXISTING) &&\n             (local_cd4 = ACCEPT_EXISTING, local_cb0 != 0 || local_cec != 0)) {\n            pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n            uVar20 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar20,pcVar15);\n            local_cd4 = ACCEPT_EXISTING;\n          }\n        }" if (parenthesized_expression "(iVar26 == 1)" ( (binary_expression "iVar26 == 1" identifier == number_literal) )) (compound_statement "{\n          if (check_existence == ACCEPT_NON_EXISTING) {\n            uVar20 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar20);\n            uVar25 = 0;\n            goto LAB_0010514b;\n          }\n          if ((EVar5 != ACCEPT_EXISTING) &&\n             (local_cd4 = ACCEPT_EXISTING, local_cb0 != 0 || local_cec != 0)) {\n            pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n            uVar20 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar20,pcVar15);\n            local_cd4 = ACCEPT_EXISTING;\n          }\n        }" { (if_statement "if (check_existence == ACCEPT_NON_EXISTING) {\n            uVar20 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar20);\n            uVar25 = 0;\n            goto LAB_0010514b;\n          }" if (parenthesized_expression "(check_existence == ACCEPT_NON_EXISTING)" ( (binary_expression "check_existence == ACCEPT_NON_EXISTING" identifier == identifier) )) (compound_statement "{\n            uVar20 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar20);\n            uVar25 = 0;\n            goto LAB_0010514b;\n          }" { (expression_statement "uVar20 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);" (assignment_expression "uVar20 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5)" identifier = (call_expression "dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5)" identifier (argument_list "(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5)" ( number_literal , (string_literal ""You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "error(0,0,uVar20);" (call_expression "error(0,0,uVar20)" identifier (argument_list "(0,0,uVar20)" ( number_literal , number_literal , identifier ))) ;) (expression_statement "uVar25 = 0;" (assignment_expression "uVar25 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_0010514b;" goto statement_identifier ;) })) (if_statement "if ((EVar5 != ACCEPT_EXISTING) &&\n             (local_cd4 = ACCEPT_EXISTING, local_cb0 != 0 || local_cec != 0)) {\n            pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n            uVar20 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar20,pcVar15);\n            local_cd4 = ACCEPT_EXISTING;\n          }" if (parenthesized_expression "((EVar5 != ACCEPT_EXISTING) &&\n             (local_cd4 = ACCEPT_EXISTING, local_cb0 != 0 || local_cec != 0))" ( (binary_expression "(EVar5 != ACCEPT_EXISTING) &&\n             (local_cd4 = ACCEPT_EXISTING, local_cb0 != 0 || local_cec != 0)" (parenthesized_expression "(EVar5 != ACCEPT_EXISTING)" ( (binary_expression "EVar5 != ACCEPT_EXISTING" identifier != identifier) )) && (parenthesized_expression "(local_cd4 = ACCEPT_EXISTING, local_cb0 != 0 || local_cec != 0)" ( (comma_expression "local_cd4 = ACCEPT_EXISTING, local_cb0 != 0 || local_cec != 0" (assignment_expression "local_cd4 = ACCEPT_EXISTING" identifier = identifier) , (binary_expression "local_cb0 != 0 || local_cec != 0" (binary_expression "local_cb0 != 0" identifier != number_literal) || (binary_expression "local_cec != 0" identifier != number_literal))) ))) )) (compound_statement "{\n            pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);\n            uVar20 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar20,pcVar15);\n            local_cd4 = ACCEPT_EXISTING;\n          }" { (expression_statement "pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);" (assignment_expression "pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile)" identifier = (call_expression "quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile)" identifier (argument_list "(L'\0',locale_quoting_style,procdata.dbfile)" ( (char_literal "L'\0'" L' escape_sequence ') , identifier , (field_expression "procdata.dbfile" identifier . field_identifier) )))) ;) (expression_statement "uVar20 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);" (assignment_expression "uVar20 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5)" identifier = (call_expression "dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5)" identifier (argument_list "(0,"%s is an slocate database.  Turning on the \'-e\' option.",5)" ( number_literal , (string_literal ""%s is an slocate database.  Turning on the \'-e\' option."" " string_content escape_sequence string_content escape_sequence string_content ") , number_literal )))) ;) (expression_statement "error(0,0,uVar20,pcVar15);" (call_expression "error(0,0,uVar20,pcVar15)" identifier (argument_list "(0,0,uVar20,pcVar15)" ( number_literal , number_literal , identifier , identifier ))) ;) (expression_statement "local_cd4 = ACCEPT_EXISTING;" (assignment_expression "local_cd4 = ACCEPT_EXISTING" identifier = identifier) ;) })) })) (expression_statement "add_visitor(visit_locate02_format,(void *)0x0);" (call_expression "add_visitor(visit_locate02_format,(void *)0x0)" identifier (argument_list "(visit_locate02_format,(void *)0x0)" ( identifier , (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ))) ;) (expression_statement "local_ca8 = local_cc8;" (assignment_expression "local_ca8 = local_cc8" identifier = identifier) ;) (expression_statement "local_ca0 = "slocate";" (assignment_expression "local_ca0 = "slocate"" identifier = (string_literal ""slocate"" " string_content ")) ;) (expression_statement "local_cac = 1;" (assignment_expression "local_cac = 1" identifier = number_literal) ;) (goto_statement "goto LAB_0010543a;" goto statement_identifier ;) })) (expression_statement "pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);" (assignment_expression "pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile)" identifier = (call_expression "quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile)" identifier (argument_list "(L'\0',locale_quoting_style,procdata.dbfile)" ( (char_literal "L'\0'" L' escape_sequence ') , identifier , (field_expression "procdata.dbfile" identifier . field_identifier) )))) ;) (expression_statement "uVar20 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);" (assignment_expression "uVar20 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5)" identifier = (call_expression "dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5)" identifier (argument_list "(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5)" ( number_literal , (string_literal ""locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"" " string_content ") , number_literal )))) ;) (expression_statement "error(0,0,uVar20,pcVar15,0);" (call_expression "error(0,0,uVar20,pcVar15,0)" identifier (argument_list "(0,0,uVar20,pcVar15,0)" ( number_literal , number_literal , identifier , identifier , number_literal ))) ;) (expression_statement "pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile);" (assignment_expression "pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile)" identifier = (call_expression "quotearg_n_style(L'\0',locale_quoting_style,procdata.dbfile)" identifier (argument_list "(L'\0',locale_quoting_style,procdata.dbfile)" ( (char_literal "L'\0'" L' escape_sequence ') , identifier , (field_expression "procdata.dbfile" identifier . field_identifier) )))) ;) (expression_statement "uVar20 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);" (assignment_expression "uVar20 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5)" identifier = (call_expression "dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5)" identifier (argument_list "(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5)" ( number_literal , (string_literal ""%s is an slocate database of unsupported security level %d; skipping it."" " string_content ") , number_literal )))) ;) (expression_statement "error(0,0,uVar20,pcVar15,iVar26);" (call_expression "error(0,0,uVar20,pcVar15,iVar26)" identifier (argument_list "(0,0,uVar20,pcVar15,iVar26)" ( number_literal , number_literal , identifier , identifier , identifier ))) ;) (expression_statement "uVar25 = 0;" (assignment_expression "uVar25 = 0" identifier = number_literal) ;) }))) (labeled_statement "LAB_0010514b:\n    iVar8 = fclose(local_ce0);" statement_identifier : (expression_statement "iVar8 = fclose(local_ce0);" (assignment_expression "iVar8 = fclose(local_ce0)" identifier = (call_expression "fclose(local_ce0)" identifier (argument_list "(local_ce0)" ( identifier )))) ;)) (if_statement "if (iVar8 == -1) {\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n      piVar16 = __errno_location();\n      error(0,*piVar16,&DAT_001207c7,pcVar15);\n      goto LAB_0010468d;\n    }" if (parenthesized_expression "(iVar8 == -1)" ( (binary_expression "iVar8 == -1" identifier == number_literal) )) (compound_statement "{\n      pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);\n      piVar16 = __errno_location();\n      error(0,*piVar16,&DAT_001207c7,pcVar15);\n      goto LAB_0010468d;\n    }" { (expression_statement "pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8);" (assignment_expression "pcVar15 = quotearg_n_style(L'\0',locale_quoting_style,local_cf8)" identifier = (call_expression "quotearg_n_style(L'\0',locale_quoting_style,local_cf8)" identifier (argument_list "(L'\0',locale_quoting_style,local_cf8)" ( (char_literal "L'\0'" L' escape_sequence ') , identifier , identifier )))) ;) (expression_statement "piVar16 = __errno_location();" (assignment_expression "piVar16 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,*piVar16,&DAT_001207c7,pcVar15);" (call_expression "error(0,*piVar16,&DAT_001207c7,pcVar15)" identifier (argument_list "(0,*piVar16,&DAT_001207c7,pcVar15)" ( number_literal , (pointer_expression "*piVar16" * identifier) , (pointer_expression "&DAT_001207c7" & identifier) , identifier ))) ;) (goto_statement "goto LAB_0010468d;" goto statement_identifier ;) })) (if_statement "if (local_cd0 != (char *)0x0) {\n      free(local_cd0);\n    }" if (parenthesized_expression "(local_cd0 != (char *)0x0)" ( (binary_expression "local_cd0 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      free(local_cd0);\n    }" { (expression_statement "free(local_cd0);" (call_expression "free(local_cd0)" identifier (argument_list "(local_cd0)" ( identifier ))) ;) })) (if_statement "if ((local_d00 == (char *)0x0) ||\n       (_Var7 = splitstring(local_d00,":",false,&path_element_pos,&path_element_len), !_Var7))\n    break;" if (parenthesized_expression "((local_d00 == (char *)0x0) ||\n       (_Var7 = splitstring(local_d00,":",false,&path_element_pos,&path_element_len), !_Var7))" ( (binary_expression "(local_d00 == (char *)0x0) ||\n       (_Var7 = splitstring(local_d00,":",false,&path_element_pos,&path_element_len), !_Var7)" (parenthesized_expression "(local_d00 == (char *)0x0)" ( (binary_expression "local_d00 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(_Var7 = splitstring(local_d00,":",false,&path_element_pos,&path_element_len), !_Var7)" ( (comma_expression "_Var7 = splitstring(local_d00,":",false,&path_element_pos,&path_element_len), !_Var7" (assignment_expression "_Var7 = splitstring(local_d00,":",false,&path_element_pos,&path_element_len)" identifier = (call_expression "splitstring(local_d00,":",false,&path_element_pos,&path_element_len)" identifier (argument_list "(local_d00,":",false,&path_element_pos,&path_element_len)" ( identifier , (string_literal "":"" " string_content ") , false , (pointer_expression "&path_element_pos" & identifier) , (pointer_expression "&path_element_len" & identifier) )))) , (unary_expression "!_Var7" ! identifier)) ))) )) (break_statement "break;" break ;)) })) (if_statement "if (local_c94 != 0) {\n    __printf_chk(1,&DAT_0011ea67,uVar25);\n  }" if (parenthesized_expression "(local_c94 != 0)" ( (binary_expression "local_c94 != 0" identifier != number_literal) )) (compound_statement "{\n    __printf_chk(1,&DAT_0011ea67,uVar25);\n  }" { (expression_statement "__printf_chk(1,&DAT_0011ea67,uVar25);" (call_expression "__printf_chk(1,&DAT_0011ea67,uVar25)" identifier (argument_list "(1,&DAT_0011ea67,uVar25)" ( number_literal , (pointer_expression "&DAT_0011ea67" & identifier) , identifier ))) ;) })) (if_statement "if ((uVar25 == 0) && ((local_cd8 == 0 || (limits.limit != 0)))) {\n    local_cc8 = (uint)(local_cec == 0);\n  }" if (parenthesized_expression "((uVar25 == 0) && ((local_cd8 == 0 || (limits.limit != 0))))" ( (binary_expression "(uVar25 == 0) && ((local_cd8 == 0 || (limits.limit != 0)))" (parenthesized_expression "(uVar25 == 0)" ( (binary_expression "uVar25 == 0" identifier == number_literal) )) && (parenthesized_expression "((local_cd8 == 0 || (limits.limit != 0)))" ( (parenthesized_expression "(local_cd8 == 0 || (limits.limit != 0))" ( (binary_expression "local_cd8 == 0 || (limits.limit != 0)" (binary_expression "local_cd8 == 0" identifier == number_literal) || (parenthesized_expression "(limits.limit != 0)" ( (binary_expression "limits.limit != 0" (field_expression "limits.limit" identifier . field_identifier) != number_literal) ))) )) ))) )) (compound_statement "{\n    local_cc8 = (uint)(local_cec == 0);\n  }" { (expression_statement "local_cc8 = (uint)(local_cec == 0);" (assignment_expression "local_cc8 = (uint)(local_cec == 0)" identifier = (call_expression "(uint)(local_cec == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_cec == 0)" ( (binary_expression "local_cec == 0" identifier == number_literal) )))) ;) })) (labeled_statement "LAB_0010468d:\n  if (lVar2 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n    __stack_chk_fail();\n  }" statement_identifier : (if_statement "if (lVar2 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n    __stack_chk_fail();\n  }" if (parenthesized_expression "(lVar2 != *(long *)(in_FS_OFFSET + 0x28))" ( (binary_expression "lVar2 != *(long *)(in_FS_OFFSET + 0x28)" identifier != (pointer_expression "*(long *)(in_FS_OFFSET + 0x28)" * (cast_expression "(long *)(in_FS_OFFSET + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_FS_OFFSET + 0x28)" ( (binary_expression "in_FS_OFFSET + 0x28" identifier + number_literal) ))))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    __stack_chk_fail();\n  }" { comment (expression_statement "__stack_chk_fail();" (call_expression "__stack_chk_fail()" identifier (argument_list "()" ( ))) ;) }))) (return_statement "return local_cc8;" return identifier ;) })))
(translation_unit "ulong FUN_001042fa(uint param_1,long *param_2,undefined8 param_3)\n\n{\n  char *pcVar1;\n  char cVar2;\n  int iVar3;\n  uint uVar4;\n  int iVar5;\n  ulong uVar6;\n  time_t tVar7;\n  byte *pbVar8;\n  undefined8 *puVar9;\n  long lVar10;\n  char *pcVar11;\n  undefined8 uVar12;\n  int *piVar13;\n  size_t sVar14;\n  ushort **ppuVar15;\n  tm *__tp;\n  undefined8 uVar16;\n  undefined8 uVar17;\n  undefined8 uVar18;\n  undefined8 uVar19;\n  size_t sVar20;\n  byte *pbVar21;\n  undefined *puVar22;\n  int iVar23;\n  undefined4 *unaff_RBP;\n  ulong uVar24;\n  code *pcVar25;\n  int unaff_R12D;\n  long *plVar26;\n  int unaff_R15D;\n  long in_FS_OFFSET;\n  byte bVar27;\n  double dVar28;\n  int local_d04;\n  char *local_d00;\n  char *local_cf8;\n  uint local_cf0;\n  int local_cec;\n  double local_ce8;\n  FILE *local_ce0;\n  uint local_cd8;\n  int local_cd4;\n  char *local_cd0;\n  uint local_cc8;\n  int local_cc4;\n  time_t *local_cc0;\n  ulong local_cb8;\n  int local_cb0;\n  uint local_cac;\n  uint local_ca8;\n  uint local_ca4;\n  char *local_ca0;\n  int local_c98;\n  int local_c94;\n  uint local_c90;\n  char local_c89;\n  long local_c80;\n  size_t local_c78;\n  undefined4 local_c70;\n  undefined4 uStack_c6c;\n  time_t local_c68;\n  long local_c60;\n  stat local_c58;\n  int local_bc8 [4];\n  byte *local_bb8;\n  undefined8 local_bb0;\n  FILE *local_ba0;\n  char *local_b98;\n  int local_b90;\n  byte local_b8c [128];\n  byte local_b0c [132];\n  undefined1 local_a88 [656];\n  undefined1 local_7f8 [656];\n  undefined1 local_568 [656];\n  char local_2d8 [18];\n  char local_2c6;\n  char local_2c5;\n  long local_40;\n  \n  bVar27 = 0;\n  local_ca4 = (uint)param_3;\n  local_40 = *(long *)(in_FS_OFFSET + 0x28);\n  if (*param_2 == 0) {\n    FUN_0010b3a9("locate",param_2,param_3,0);\n  }\n  else {\n    FUN_0010b3a9();\n  }\n  setlocale(6,"");\n  bindtextdomain("findutils","/usr/share/locale");\n  textdomain("findutils");\n  DAT_00126290 = FUN_0010c71d(0);\n  iVar3 = FUN_0011d670(FUN_001064e7);\n  if ((iVar3 == 0) && (local_cc8 = FUN_0011d670(FUN_001038f1), local_cc8 == 0)) {\n    DAT_00126270 = 0;\n    DAT_00126278 = 0;\n    DAT_00126289 = '\x01';\n    local_d00 = getenv("LOCATE_PATH");\n    DAT_00126200 = 0;\n    unaff_RBP = &local_c70;\n    puVar22 = &DAT_0011eb4c;\n    unaff_R12D = 1;\n    local_d04 = 0;\n    local_cf0 = 0;\n    local_cec = 0;\n    local_cb0 = 0;\n    local_c98 = 0;\n    local_c94 = 0;\n    unaff_R15D = 0;\n    local_cd8 = local_cc8;\n    local_cc4 = 0;\n  }\n  else {\n    puVar22 = (undefined *)dcgettext(0,"The atexit library function failed",5);\n    piVar13 = __errno_location();\n    error(1,*piVar13,puVar22);\n    local_c98 = unaff_R12D;\n  }\n  while( true ) {\n    local_c70 = 0xffffffff;\n    iVar3 = getopt_long(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP);\n    if (iVar3 == -1) break;\n    if (iVar3 - 0x30U < 0x52) {\n                    \n                    \n      uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))();\n      return uVar6;\n    }\n    FUN_00103906(1);\n    local_cc4 = unaff_R12D;\n  }\n  if ((-1 < (int)local_ca4) && (local_d00 != (char *)0x0)) {\n    close(local_ca4);\n    local_ca4 = 0xffffffff;\n  }\n  if (local_c94 == 0 && local_cec == 0) {\n    if (optind == param_1) {\n      uVar12 = dcgettext(0,"pattern argument expected",5);\n      sVar14 = 0;\n      error(0,0,uVar12);\n      FUN_00103906(1);\n      goto LAB_00104874;\n    }\n    local_cb0 = 1;\n  }\n  else if ((local_cec != 0) && (optind == param_1)) {\n    local_cd8 = local_cc8;\n  }\n  iVar3 = isatty(1);\n  DAT_0012628a = iVar3 == 1;\n  if (local_d00 != (char *)0x0) {\n    FUN_001063f9(local_d00,":",1,&local_c80,&local_c78);\n  }\n  uVar4 = local_cf0 | 0x400000;\n  if (unaff_R15D == 0) {\n    uVar4 = local_cf0;\n  }\n  local_c89 = '\0';\n  uVar6 = 0;\n  local_c90 = 0xffffffff;\n  local_cf0 = uVar4;\n  while ((uVar4 = local_ca4, local_cd8 == 0 || (DAT_00126278 < DAT_00126270))) {\n    DAT_00126268 = 0;\n    DAT_00126260 = 0;\n    DAT_00126258 = 0;\n    DAT_00126250 = 0;\n    DAT_00126248 = 0;\n    _DAT_00126240 = 0;\n    if (local_d00 == (char *)0x0) {\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = DAT_00126280;\n      local_cd0 = local_d00;\n      local_ca4 = local_c90;\n    }\n    else {\n      sVar14 = local_c78;\n      if (local_c78 == 1) {\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar4 = FUN_001038af(local_cf8);\n      if ((int)uVar4 < 0) {\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n    }\nLAB_00105254:\n    iVar3 = __fxstat(1,uVar4,&local_c58);\n    if (iVar3 == 0) {\n      local_cb8 = local_c58.st_size;\n      local_c68 = local_c58.st_mtim.tv_sec;\n      local_c60 = local_c58.st_mtim.tv_nsec;\n      tVar7 = time((time_t *)&local_c70);\n      if (tVar7 == -1) {\n        uVar12 = dcgettext(0,"time system call failed",5);\n        piVar13 = __errno_location();\n        error(0,*piVar13,uVar12);\n      }\n      else {\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &local_c68;\n    }\n    else {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (time_t *)0x0;\n    }\n    iVar3 = DAT_00126200;\n    uVar4 = optind;\n    uVar6 = (ulong)optind;\n    iVar5 = param_1 - optind;\n    local_cd4 = DAT_00126200;\n    local_b90 = 0;\n    local_bc8[1] = 0;\n    local_bc8[2] = 0;\n    local_b98 = local_cf8;\n    local_ba0 = local_ce0;\n    DAT_00126220 = 0;\n    DAT_00126218 = 0;\n    DAT_00126210 = 0;\n    DAT_00126288 = '\0';\n    local_bb0 = 0x80;\n    local_bb8 = (byte *)FUN_0010d559(0x80);\n    sVar14 = fread(local_bb8,1,2,local_ba0);\n    pbVar8 = local_bb8;\n    uVar24 = (ulong)(int)sVar14;\n    if (2 < uVar24) {\n                    \n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }\n    if ((uVar24 < 2) || (local_bb8[1] != 0)) {\nLAB_00105aa4:\n      FUN_001040e7(local_bc8,10,0);\n      sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0);\n      iVar3 = (int)sVar14 + (int)sVar20;\n      if (((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)) {\n        FUN_001040e7(local_bc8,0x100,0);\n        if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        uVar6 = FUN_0010ca58(0,8,local_cf8);\n        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar12,uVar6);\nLAB_00104daa:\n        uVar4 = (uint)uVar6;\n        FUN_001039a8(FUN_00103e25,0);\n      }\n      else {\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar5) {\n        plVar26 = param_2 + (int)uVar4;\n        do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);\n      }\n      lVar10 = DAT_00126218;\n      if (local_cd4 == 1) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }\n      }\n      else if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }\n      if (local_cec != 0) {\n        FUN_001039a8(FUN_00103a70,&DAT_00126240);\n      }\n      if (local_cb0 != 0) {\n        if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }\n      }\n      if (local_cd8 == 0) {\n        FUN_001039a8(FUN_001038a4,&DAT_00126270);\n      }\n      else {\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }\n      pcVar1 = local_b98;\n      if (iVar5 < 2) {\n        DAT_00126208 = FUN_00103755;\n      }\n      else {\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }\n      if (local_cec != 0) {\n        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar12,pcVar1,local_ca0);\n      }\n      local_bc8[0] = getc(local_ba0);\n      if ((local_bc8[0] != -1) && (local_cac != 0)) {\n        ungetc(local_bc8[0],local_ba0);\n        local_bc8[0] = 0;\n      }\n      do {\n        if (local_bc8[0] == -1) break;\n        iVar3 = (*DAT_00126208)(local_bc8);\n      } while (iVar3 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }\n        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar3 = ferror(local_ba0);\n      uVar6 = DAT_00126278;\n      if (iVar3 != 0) {\n        uVar12 = FUN_0010ca58(0,8,local_b98);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        uVar6 = 0;\n      }\n    }\n    else {\n      ppuVar15 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar23 = (char)*pbVar8 + -0x30;\n      if (iVar23 < 2) {\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar16,uVar12,0);\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar16,uVar12,iVar23);\n      uVar6 = 0;\n    }\nLAB_0010514b:\n    iVar3 = fclose(local_ce0);\n    if (iVar3 == -1) {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      goto LAB_0010468d;\n    }\n    if (local_cd0 != (char *)0x0) {\n      free(local_cd0);\n    }\n    if ((local_d00 == (char *)0x0) ||\n       (cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0')) break;\n  }\n  if (local_c94 != 0) {\n    __printf_chk(1,&DAT_0011ea67,uVar6);\n  }\n  if ((uVar6 == 0) && ((local_cd8 == 0 || (DAT_00126270 != 0)))) {\n    local_cc8 = (uint)(local_cec == 0);\n  }\nLAB_0010468d:\n  if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n    __stack_chk_fail();\n  }\n  return (ulong)local_cc8;\n}\n\n" (function_definition "ulong FUN_001042fa(uint param_1,long *param_2,undefined8 param_3)\n\n{\n  char *pcVar1;\n  char cVar2;\n  int iVar3;\n  uint uVar4;\n  int iVar5;\n  ulong uVar6;\n  time_t tVar7;\n  byte *pbVar8;\n  undefined8 *puVar9;\n  long lVar10;\n  char *pcVar11;\n  undefined8 uVar12;\n  int *piVar13;\n  size_t sVar14;\n  ushort **ppuVar15;\n  tm *__tp;\n  undefined8 uVar16;\n  undefined8 uVar17;\n  undefined8 uVar18;\n  undefined8 uVar19;\n  size_t sVar20;\n  byte *pbVar21;\n  undefined *puVar22;\n  int iVar23;\n  undefined4 *unaff_RBP;\n  ulong uVar24;\n  code *pcVar25;\n  int unaff_R12D;\n  long *plVar26;\n  int unaff_R15D;\n  long in_FS_OFFSET;\n  byte bVar27;\n  double dVar28;\n  int local_d04;\n  char *local_d00;\n  char *local_cf8;\n  uint local_cf0;\n  int local_cec;\n  double local_ce8;\n  FILE *local_ce0;\n  uint local_cd8;\n  int local_cd4;\n  char *local_cd0;\n  uint local_cc8;\n  int local_cc4;\n  time_t *local_cc0;\n  ulong local_cb8;\n  int local_cb0;\n  uint local_cac;\n  uint local_ca8;\n  uint local_ca4;\n  char *local_ca0;\n  int local_c98;\n  int local_c94;\n  uint local_c90;\n  char local_c89;\n  long local_c80;\n  size_t local_c78;\n  undefined4 local_c70;\n  undefined4 uStack_c6c;\n  time_t local_c68;\n  long local_c60;\n  stat local_c58;\n  int local_bc8 [4];\n  byte *local_bb8;\n  undefined8 local_bb0;\n  FILE *local_ba0;\n  char *local_b98;\n  int local_b90;\n  byte local_b8c [128];\n  byte local_b0c [132];\n  undefined1 local_a88 [656];\n  undefined1 local_7f8 [656];\n  undefined1 local_568 [656];\n  char local_2d8 [18];\n  char local_2c6;\n  char local_2c5;\n  long local_40;\n  \n  bVar27 = 0;\n  local_ca4 = (uint)param_3;\n  local_40 = *(long *)(in_FS_OFFSET + 0x28);\n  if (*param_2 == 0) {\n    FUN_0010b3a9("locate",param_2,param_3,0);\n  }\n  else {\n    FUN_0010b3a9();\n  }\n  setlocale(6,"");\n  bindtextdomain("findutils","/usr/share/locale");\n  textdomain("findutils");\n  DAT_00126290 = FUN_0010c71d(0);\n  iVar3 = FUN_0011d670(FUN_001064e7);\n  if ((iVar3 == 0) && (local_cc8 = FUN_0011d670(FUN_001038f1), local_cc8 == 0)) {\n    DAT_00126270 = 0;\n    DAT_00126278 = 0;\n    DAT_00126289 = '\x01';\n    local_d00 = getenv("LOCATE_PATH");\n    DAT_00126200 = 0;\n    unaff_RBP = &local_c70;\n    puVar22 = &DAT_0011eb4c;\n    unaff_R12D = 1;\n    local_d04 = 0;\n    local_cf0 = 0;\n    local_cec = 0;\n    local_cb0 = 0;\n    local_c98 = 0;\n    local_c94 = 0;\n    unaff_R15D = 0;\n    local_cd8 = local_cc8;\n    local_cc4 = 0;\n  }\n  else {\n    puVar22 = (undefined *)dcgettext(0,"The atexit library function failed",5);\n    piVar13 = __errno_location();\n    error(1,*piVar13,puVar22);\n    local_c98 = unaff_R12D;\n  }\n  while( true ) {\n    local_c70 = 0xffffffff;\n    iVar3 = getopt_long(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP);\n    if (iVar3 == -1) break;\n    if (iVar3 - 0x30U < 0x52) {\n                    \n                    \n      uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))();\n      return uVar6;\n    }\n    FUN_00103906(1);\n    local_cc4 = unaff_R12D;\n  }\n  if ((-1 < (int)local_ca4) && (local_d00 != (char *)0x0)) {\n    close(local_ca4);\n    local_ca4 = 0xffffffff;\n  }\n  if (local_c94 == 0 && local_cec == 0) {\n    if (optind == param_1) {\n      uVar12 = dcgettext(0,"pattern argument expected",5);\n      sVar14 = 0;\n      error(0,0,uVar12);\n      FUN_00103906(1);\n      goto LAB_00104874;\n    }\n    local_cb0 = 1;\n  }\n  else if ((local_cec != 0) && (optind == param_1)) {\n    local_cd8 = local_cc8;\n  }\n  iVar3 = isatty(1);\n  DAT_0012628a = iVar3 == 1;\n  if (local_d00 != (char *)0x0) {\n    FUN_001063f9(local_d00,":",1,&local_c80,&local_c78);\n  }\n  uVar4 = local_cf0 | 0x400000;\n  if (unaff_R15D == 0) {\n    uVar4 = local_cf0;\n  }\n  local_c89 = '\0';\n  uVar6 = 0;\n  local_c90 = 0xffffffff;\n  local_cf0 = uVar4;\n  while ((uVar4 = local_ca4, local_cd8 == 0 || (DAT_00126278 < DAT_00126270))) {\n    DAT_00126268 = 0;\n    DAT_00126260 = 0;\n    DAT_00126258 = 0;\n    DAT_00126250 = 0;\n    DAT_00126248 = 0;\n    _DAT_00126240 = 0;\n    if (local_d00 == (char *)0x0) {\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = DAT_00126280;\n      local_cd0 = local_d00;\n      local_ca4 = local_c90;\n    }\n    else {\n      sVar14 = local_c78;\n      if (local_c78 == 1) {\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar4 = FUN_001038af(local_cf8);\n      if ((int)uVar4 < 0) {\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n    }\nLAB_00105254:\n    iVar3 = __fxstat(1,uVar4,&local_c58);\n    if (iVar3 == 0) {\n      local_cb8 = local_c58.st_size;\n      local_c68 = local_c58.st_mtim.tv_sec;\n      local_c60 = local_c58.st_mtim.tv_nsec;\n      tVar7 = time((time_t *)&local_c70);\n      if (tVar7 == -1) {\n        uVar12 = dcgettext(0,"time system call failed",5);\n        piVar13 = __errno_location();\n        error(0,*piVar13,uVar12);\n      }\n      else {\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &local_c68;\n    }\n    else {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (time_t *)0x0;\n    }\n    iVar3 = DAT_00126200;\n    uVar4 = optind;\n    uVar6 = (ulong)optind;\n    iVar5 = param_1 - optind;\n    local_cd4 = DAT_00126200;\n    local_b90 = 0;\n    local_bc8[1] = 0;\n    local_bc8[2] = 0;\n    local_b98 = local_cf8;\n    local_ba0 = local_ce0;\n    DAT_00126220 = 0;\n    DAT_00126218 = 0;\n    DAT_00126210 = 0;\n    DAT_00126288 = '\0';\n    local_bb0 = 0x80;\n    local_bb8 = (byte *)FUN_0010d559(0x80);\n    sVar14 = fread(local_bb8,1,2,local_ba0);\n    pbVar8 = local_bb8;\n    uVar24 = (ulong)(int)sVar14;\n    if (2 < uVar24) {\n                    \n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }\n    if ((uVar24 < 2) || (local_bb8[1] != 0)) {\nLAB_00105aa4:\n      FUN_001040e7(local_bc8,10,0);\n      sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0);\n      iVar3 = (int)sVar14 + (int)sVar20;\n      if (((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)) {\n        FUN_001040e7(local_bc8,0x100,0);\n        if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        uVar6 = FUN_0010ca58(0,8,local_cf8);\n        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar12,uVar6);\nLAB_00104daa:\n        uVar4 = (uint)uVar6;\n        FUN_001039a8(FUN_00103e25,0);\n      }\n      else {\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar5) {\n        plVar26 = param_2 + (int)uVar4;\n        do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);\n      }\n      lVar10 = DAT_00126218;\n      if (local_cd4 == 1) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }\n      }\n      else if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }\n      if (local_cec != 0) {\n        FUN_001039a8(FUN_00103a70,&DAT_00126240);\n      }\n      if (local_cb0 != 0) {\n        if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }\n      }\n      if (local_cd8 == 0) {\n        FUN_001039a8(FUN_001038a4,&DAT_00126270);\n      }\n      else {\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }\n      pcVar1 = local_b98;\n      if (iVar5 < 2) {\n        DAT_00126208 = FUN_00103755;\n      }\n      else {\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }\n      if (local_cec != 0) {\n        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar12,pcVar1,local_ca0);\n      }\n      local_bc8[0] = getc(local_ba0);\n      if ((local_bc8[0] != -1) && (local_cac != 0)) {\n        ungetc(local_bc8[0],local_ba0);\n        local_bc8[0] = 0;\n      }\n      do {\n        if (local_bc8[0] == -1) break;\n        iVar3 = (*DAT_00126208)(local_bc8);\n      } while (iVar3 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }\n        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar3 = ferror(local_ba0);\n      uVar6 = DAT_00126278;\n      if (iVar3 != 0) {\n        uVar12 = FUN_0010ca58(0,8,local_b98);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        uVar6 = 0;\n      }\n    }\n    else {\n      ppuVar15 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar23 = (char)*pbVar8 + -0x30;\n      if (iVar23 < 2) {\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar16,uVar12,0);\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar16,uVar12,iVar23);\n      uVar6 = 0;\n    }\nLAB_0010514b:\n    iVar3 = fclose(local_ce0);\n    if (iVar3 == -1) {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      goto LAB_0010468d;\n    }\n    if (local_cd0 != (char *)0x0) {\n      free(local_cd0);\n    }\n    if ((local_d00 == (char *)0x0) ||\n       (cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0')) break;\n  }\n  if (local_c94 != 0) {\n    __printf_chk(1,&DAT_0011ea67,uVar6);\n  }\n  if ((uVar6 == 0) && ((local_cd8 == 0 || (DAT_00126270 != 0)))) {\n    local_cc8 = (uint)(local_cec == 0);\n  }\nLAB_0010468d:\n  if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n    __stack_chk_fail();\n  }\n  return (ulong)local_cc8;\n}" type_identifier (function_declarator "FUN_001042fa(uint param_1,long *param_2,undefined8 param_3)" identifier (parameter_list "(uint param_1,long *param_2,undefined8 param_3)" ( (parameter_declaration "uint param_1" type_identifier identifier) , (parameter_declaration "long *param_2" (sized_type_specifier "long" long) (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "undefined8 param_3" type_identifier identifier) ))) (compound_statement "{\n  char *pcVar1;\n  char cVar2;\n  int iVar3;\n  uint uVar4;\n  int iVar5;\n  ulong uVar6;\n  time_t tVar7;\n  byte *pbVar8;\n  undefined8 *puVar9;\n  long lVar10;\n  char *pcVar11;\n  undefined8 uVar12;\n  int *piVar13;\n  size_t sVar14;\n  ushort **ppuVar15;\n  tm *__tp;\n  undefined8 uVar16;\n  undefined8 uVar17;\n  undefined8 uVar18;\n  undefined8 uVar19;\n  size_t sVar20;\n  byte *pbVar21;\n  undefined *puVar22;\n  int iVar23;\n  undefined4 *unaff_RBP;\n  ulong uVar24;\n  code *pcVar25;\n  int unaff_R12D;\n  long *plVar26;\n  int unaff_R15D;\n  long in_FS_OFFSET;\n  byte bVar27;\n  double dVar28;\n  int local_d04;\n  char *local_d00;\n  char *local_cf8;\n  uint local_cf0;\n  int local_cec;\n  double local_ce8;\n  FILE *local_ce0;\n  uint local_cd8;\n  int local_cd4;\n  char *local_cd0;\n  uint local_cc8;\n  int local_cc4;\n  time_t *local_cc0;\n  ulong local_cb8;\n  int local_cb0;\n  uint local_cac;\n  uint local_ca8;\n  uint local_ca4;\n  char *local_ca0;\n  int local_c98;\n  int local_c94;\n  uint local_c90;\n  char local_c89;\n  long local_c80;\n  size_t local_c78;\n  undefined4 local_c70;\n  undefined4 uStack_c6c;\n  time_t local_c68;\n  long local_c60;\n  stat local_c58;\n  int local_bc8 [4];\n  byte *local_bb8;\n  undefined8 local_bb0;\n  FILE *local_ba0;\n  char *local_b98;\n  int local_b90;\n  byte local_b8c [128];\n  byte local_b0c [132];\n  undefined1 local_a88 [656];\n  undefined1 local_7f8 [656];\n  undefined1 local_568 [656];\n  char local_2d8 [18];\n  char local_2c6;\n  char local_2c5;\n  long local_40;\n  \n  bVar27 = 0;\n  local_ca4 = (uint)param_3;\n  local_40 = *(long *)(in_FS_OFFSET + 0x28);\n  if (*param_2 == 0) {\n    FUN_0010b3a9("locate",param_2,param_3,0);\n  }\n  else {\n    FUN_0010b3a9();\n  }\n  setlocale(6,"");\n  bindtextdomain("findutils","/usr/share/locale");\n  textdomain("findutils");\n  DAT_00126290 = FUN_0010c71d(0);\n  iVar3 = FUN_0011d670(FUN_001064e7);\n  if ((iVar3 == 0) && (local_cc8 = FUN_0011d670(FUN_001038f1), local_cc8 == 0)) {\n    DAT_00126270 = 0;\n    DAT_00126278 = 0;\n    DAT_00126289 = '\x01';\n    local_d00 = getenv("LOCATE_PATH");\n    DAT_00126200 = 0;\n    unaff_RBP = &local_c70;\n    puVar22 = &DAT_0011eb4c;\n    unaff_R12D = 1;\n    local_d04 = 0;\n    local_cf0 = 0;\n    local_cec = 0;\n    local_cb0 = 0;\n    local_c98 = 0;\n    local_c94 = 0;\n    unaff_R15D = 0;\n    local_cd8 = local_cc8;\n    local_cc4 = 0;\n  }\n  else {\n    puVar22 = (undefined *)dcgettext(0,"The atexit library function failed",5);\n    piVar13 = __errno_location();\n    error(1,*piVar13,puVar22);\n    local_c98 = unaff_R12D;\n  }\n  while( true ) {\n    local_c70 = 0xffffffff;\n    iVar3 = getopt_long(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP);\n    if (iVar3 == -1) break;\n    if (iVar3 - 0x30U < 0x52) {\n                    \n                    \n      uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))();\n      return uVar6;\n    }\n    FUN_00103906(1);\n    local_cc4 = unaff_R12D;\n  }\n  if ((-1 < (int)local_ca4) && (local_d00 != (char *)0x0)) {\n    close(local_ca4);\n    local_ca4 = 0xffffffff;\n  }\n  if (local_c94 == 0 && local_cec == 0) {\n    if (optind == param_1) {\n      uVar12 = dcgettext(0,"pattern argument expected",5);\n      sVar14 = 0;\n      error(0,0,uVar12);\n      FUN_00103906(1);\n      goto LAB_00104874;\n    }\n    local_cb0 = 1;\n  }\n  else if ((local_cec != 0) && (optind == param_1)) {\n    local_cd8 = local_cc8;\n  }\n  iVar3 = isatty(1);\n  DAT_0012628a = iVar3 == 1;\n  if (local_d00 != (char *)0x0) {\n    FUN_001063f9(local_d00,":",1,&local_c80,&local_c78);\n  }\n  uVar4 = local_cf0 | 0x400000;\n  if (unaff_R15D == 0) {\n    uVar4 = local_cf0;\n  }\n  local_c89 = '\0';\n  uVar6 = 0;\n  local_c90 = 0xffffffff;\n  local_cf0 = uVar4;\n  while ((uVar4 = local_ca4, local_cd8 == 0 || (DAT_00126278 < DAT_00126270))) {\n    DAT_00126268 = 0;\n    DAT_00126260 = 0;\n    DAT_00126258 = 0;\n    DAT_00126250 = 0;\n    DAT_00126248 = 0;\n    _DAT_00126240 = 0;\n    if (local_d00 == (char *)0x0) {\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = DAT_00126280;\n      local_cd0 = local_d00;\n      local_ca4 = local_c90;\n    }\n    else {\n      sVar14 = local_c78;\n      if (local_c78 == 1) {\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar4 = FUN_001038af(local_cf8);\n      if ((int)uVar4 < 0) {\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n    }\nLAB_00105254:\n    iVar3 = __fxstat(1,uVar4,&local_c58);\n    if (iVar3 == 0) {\n      local_cb8 = local_c58.st_size;\n      local_c68 = local_c58.st_mtim.tv_sec;\n      local_c60 = local_c58.st_mtim.tv_nsec;\n      tVar7 = time((time_t *)&local_c70);\n      if (tVar7 == -1) {\n        uVar12 = dcgettext(0,"time system call failed",5);\n        piVar13 = __errno_location();\n        error(0,*piVar13,uVar12);\n      }\n      else {\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &local_c68;\n    }\n    else {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (time_t *)0x0;\n    }\n    iVar3 = DAT_00126200;\n    uVar4 = optind;\n    uVar6 = (ulong)optind;\n    iVar5 = param_1 - optind;\n    local_cd4 = DAT_00126200;\n    local_b90 = 0;\n    local_bc8[1] = 0;\n    local_bc8[2] = 0;\n    local_b98 = local_cf8;\n    local_ba0 = local_ce0;\n    DAT_00126220 = 0;\n    DAT_00126218 = 0;\n    DAT_00126210 = 0;\n    DAT_00126288 = '\0';\n    local_bb0 = 0x80;\n    local_bb8 = (byte *)FUN_0010d559(0x80);\n    sVar14 = fread(local_bb8,1,2,local_ba0);\n    pbVar8 = local_bb8;\n    uVar24 = (ulong)(int)sVar14;\n    if (2 < uVar24) {\n                    \n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }\n    if ((uVar24 < 2) || (local_bb8[1] != 0)) {\nLAB_00105aa4:\n      FUN_001040e7(local_bc8,10,0);\n      sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0);\n      iVar3 = (int)sVar14 + (int)sVar20;\n      if (((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)) {\n        FUN_001040e7(local_bc8,0x100,0);\n        if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        uVar6 = FUN_0010ca58(0,8,local_cf8);\n        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar12,uVar6);\nLAB_00104daa:\n        uVar4 = (uint)uVar6;\n        FUN_001039a8(FUN_00103e25,0);\n      }\n      else {\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar5) {\n        plVar26 = param_2 + (int)uVar4;\n        do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);\n      }\n      lVar10 = DAT_00126218;\n      if (local_cd4 == 1) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }\n      }\n      else if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }\n      if (local_cec != 0) {\n        FUN_001039a8(FUN_00103a70,&DAT_00126240);\n      }\n      if (local_cb0 != 0) {\n        if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }\n      }\n      if (local_cd8 == 0) {\n        FUN_001039a8(FUN_001038a4,&DAT_00126270);\n      }\n      else {\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }\n      pcVar1 = local_b98;\n      if (iVar5 < 2) {\n        DAT_00126208 = FUN_00103755;\n      }\n      else {\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }\n      if (local_cec != 0) {\n        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar12,pcVar1,local_ca0);\n      }\n      local_bc8[0] = getc(local_ba0);\n      if ((local_bc8[0] != -1) && (local_cac != 0)) {\n        ungetc(local_bc8[0],local_ba0);\n        local_bc8[0] = 0;\n      }\n      do {\n        if (local_bc8[0] == -1) break;\n        iVar3 = (*DAT_00126208)(local_bc8);\n      } while (iVar3 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }\n        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar3 = ferror(local_ba0);\n      uVar6 = DAT_00126278;\n      if (iVar3 != 0) {\n        uVar12 = FUN_0010ca58(0,8,local_b98);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        uVar6 = 0;\n      }\n    }\n    else {\n      ppuVar15 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar23 = (char)*pbVar8 + -0x30;\n      if (iVar23 < 2) {\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar16,uVar12,0);\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar16,uVar12,iVar23);\n      uVar6 = 0;\n    }\nLAB_0010514b:\n    iVar3 = fclose(local_ce0);\n    if (iVar3 == -1) {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      goto LAB_0010468d;\n    }\n    if (local_cd0 != (char *)0x0) {\n      free(local_cd0);\n    }\n    if ((local_d00 == (char *)0x0) ||\n       (cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0')) break;\n  }\n  if (local_c94 != 0) {\n    __printf_chk(1,&DAT_0011ea67,uVar6);\n  }\n  if ((uVar6 == 0) && ((local_cd8 == 0 || (DAT_00126270 != 0)))) {\n    local_cc8 = (uint)(local_cec == 0);\n  }\nLAB_0010468d:\n  if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n    __stack_chk_fail();\n  }\n  return (ulong)local_cc8;\n}" { (declaration "char *pcVar1;" primitive_type (pointer_declarator "*pcVar1" * identifier) ;) (declaration "char cVar2;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "ulong uVar6;" type_identifier identifier ;) (declaration "time_t tVar7;" type_identifier identifier ;) (declaration "byte *pbVar8;" type_identifier (pointer_declarator "*pbVar8" * identifier) ;) (declaration "undefined8 *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (declaration "long lVar10;" (sized_type_specifier "long" long) identifier ;) (declaration "char *pcVar11;" primitive_type (pointer_declarator "*pcVar11" * identifier) ;) (declaration "undefined8 uVar12;" type_identifier identifier ;) (declaration "int *piVar13;" primitive_type (pointer_declarator "*piVar13" * identifier) ;) (declaration "size_t sVar14;" primitive_type identifier ;) (declaration "ushort **ppuVar15;" type_identifier (pointer_declarator "**ppuVar15" * (pointer_declarator "*ppuVar15" * identifier)) ;) (declaration "tm *__tp;" type_identifier (pointer_declarator "*__tp" * identifier) ;) (declaration "undefined8 uVar16;" type_identifier identifier ;) (declaration "undefined8 uVar17;" type_identifier identifier ;) (declaration "undefined8 uVar18;" type_identifier identifier ;) (declaration "undefined8 uVar19;" type_identifier identifier ;) (declaration "size_t sVar20;" primitive_type identifier ;) (declaration "byte *pbVar21;" type_identifier (pointer_declarator "*pbVar21" * identifier) ;) (declaration "undefined *puVar22;" type_identifier (pointer_declarator "*puVar22" * identifier) ;) (declaration "int iVar23;" primitive_type identifier ;) (declaration "undefined4 *unaff_RBP;" type_identifier (pointer_declarator "*unaff_RBP" * identifier) ;) (declaration "ulong uVar24;" type_identifier identifier ;) (declaration "code *pcVar25;" type_identifier (pointer_declarator "*pcVar25" * identifier) ;) (declaration "int unaff_R12D;" primitive_type identifier ;) (declaration "long *plVar26;" (sized_type_specifier "long" long) (pointer_declarator "*plVar26" * identifier) ;) (declaration "int unaff_R15D;" primitive_type identifier ;) (declaration "long in_FS_OFFSET;" (sized_type_specifier "long" long) identifier ;) (declaration "byte bVar27;" type_identifier identifier ;) (declaration "double dVar28;" primitive_type identifier ;) (declaration "int local_d04;" primitive_type identifier ;) (declaration "char *local_d00;" primitive_type (pointer_declarator "*local_d00" * identifier) ;) (declaration "char *local_cf8;" primitive_type (pointer_declarator "*local_cf8" * identifier) ;) (declaration "uint local_cf0;" type_identifier identifier ;) (declaration "int local_cec;" primitive_type identifier ;) (declaration "double local_ce8;" primitive_type identifier ;) (declaration "FILE *local_ce0;" type_identifier (pointer_declarator "*local_ce0" * identifier) ;) (declaration "uint local_cd8;" type_identifier identifier ;) (declaration "int local_cd4;" primitive_type identifier ;) (declaration "char *local_cd0;" primitive_type (pointer_declarator "*local_cd0" * identifier) ;) (declaration "uint local_cc8;" type_identifier identifier ;) (declaration "int local_cc4;" primitive_type identifier ;) (declaration "time_t *local_cc0;" type_identifier (pointer_declarator "*local_cc0" * identifier) ;) (declaration "ulong local_cb8;" type_identifier identifier ;) (declaration "int local_cb0;" primitive_type identifier ;) (declaration "uint local_cac;" type_identifier identifier ;) (declaration "uint local_ca8;" type_identifier identifier ;) (declaration "uint local_ca4;" type_identifier identifier ;) (declaration "char *local_ca0;" primitive_type (pointer_declarator "*local_ca0" * identifier) ;) (declaration "int local_c98;" primitive_type identifier ;) (declaration "int local_c94;" primitive_type identifier ;) (declaration "uint local_c90;" type_identifier identifier ;) (declaration "char local_c89;" primitive_type identifier ;) (declaration "long local_c80;" (sized_type_specifier "long" long) identifier ;) (declaration "size_t local_c78;" primitive_type identifier ;) (declaration "undefined4 local_c70;" type_identifier identifier ;) (declaration "undefined4 uStack_c6c;" type_identifier identifier ;) (declaration "time_t local_c68;" type_identifier identifier ;) (declaration "long local_c60;" (sized_type_specifier "long" long) identifier ;) (declaration "stat local_c58;" type_identifier identifier ;) (declaration "int local_bc8 [4];" primitive_type (array_declarator "local_bc8 [4]" identifier [ number_literal ]) ;) (declaration "byte *local_bb8;" type_identifier (pointer_declarator "*local_bb8" * identifier) ;) (declaration "undefined8 local_bb0;" type_identifier identifier ;) (declaration "FILE *local_ba0;" type_identifier (pointer_declarator "*local_ba0" * identifier) ;) (declaration "char *local_b98;" primitive_type (pointer_declarator "*local_b98" * identifier) ;) (declaration "int local_b90;" primitive_type identifier ;) (declaration "byte local_b8c [128];" type_identifier (array_declarator "local_b8c [128]" identifier [ number_literal ]) ;) (declaration "byte local_b0c [132];" type_identifier (array_declarator "local_b0c [132]" identifier [ number_literal ]) ;) (declaration "undefined1 local_a88 [656];" type_identifier (array_declarator "local_a88 [656]" identifier [ number_literal ]) ;) (declaration "undefined1 local_7f8 [656];" type_identifier (array_declarator "local_7f8 [656]" identifier [ number_literal ]) ;) (declaration "undefined1 local_568 [656];" type_identifier (array_declarator "local_568 [656]" identifier [ number_literal ]) ;) (declaration "char local_2d8 [18];" primitive_type (array_declarator "local_2d8 [18]" identifier [ number_literal ]) ;) (declaration "char local_2c6;" primitive_type identifier ;) (declaration "char local_2c5;" primitive_type identifier ;) (declaration "long local_40;" (sized_type_specifier "long" long) identifier ;) (expression_statement "bVar27 = 0;" (assignment_expression "bVar27 = 0" identifier = number_literal) ;) (expression_statement "local_ca4 = (uint)param_3;" (assignment_expression "local_ca4 = (uint)param_3" identifier = (cast_expression "(uint)param_3" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "local_40 = *(long *)(in_FS_OFFSET + 0x28);" (assignment_expression "local_40 = *(long *)(in_FS_OFFSET + 0x28)" identifier = (pointer_expression "*(long *)(in_FS_OFFSET + 0x28)" * (cast_expression "(long *)(in_FS_OFFSET + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_FS_OFFSET + 0x28)" ( (binary_expression "in_FS_OFFSET + 0x28" identifier + number_literal) ))))) ;) (if_statement "if (*param_2 == 0) {\n    FUN_0010b3a9("locate",param_2,param_3,0);\n  }\n  else {\n    FUN_0010b3a9();\n  }" if (parenthesized_expression "(*param_2 == 0)" ( (binary_expression "*param_2 == 0" (pointer_expression "*param_2" * identifier) == number_literal) )) (compound_statement "{\n    FUN_0010b3a9("locate",param_2,param_3,0);\n  }" { (expression_statement "FUN_0010b3a9("locate",param_2,param_3,0);" (call_expression "FUN_0010b3a9("locate",param_2,param_3,0)" identifier (argument_list "("locate",param_2,param_3,0)" ( (string_literal ""locate"" " string_content ") , identifier , identifier , number_literal ))) ;) }) (else_clause "else {\n    FUN_0010b3a9();\n  }" else (compound_statement "{\n    FUN_0010b3a9();\n  }" { (expression_statement "FUN_0010b3a9();" (call_expression "FUN_0010b3a9()" identifier (argument_list "()" ( ))) ;) }))) (expression_statement "setlocale(6,"");" (call_expression "setlocale(6,"")" identifier (argument_list "(6,"")" ( number_literal , (string_literal """" " ") ))) ;) (expression_statement "bindtextdomain("findutils","/usr/share/locale");" (call_expression "bindtextdomain("findutils","/usr/share/locale")" identifier (argument_list "("findutils","/usr/share/locale")" ( (string_literal ""findutils"" " string_content ") , (string_literal ""/usr/share/locale"" " string_content ") ))) ;) (expression_statement "textdomain("findutils");" (call_expression "textdomain("findutils")" identifier (argument_list "("findutils")" ( (string_literal ""findutils"" " string_content ") ))) ;) (expression_statement "DAT_00126290 = FUN_0010c71d(0);" (assignment_expression "DAT_00126290 = FUN_0010c71d(0)" identifier = (call_expression "FUN_0010c71d(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "iVar3 = FUN_0011d670(FUN_001064e7);" (assignment_expression "iVar3 = FUN_0011d670(FUN_001064e7)" identifier = (call_expression "FUN_0011d670(FUN_001064e7)" identifier (argument_list "(FUN_001064e7)" ( identifier )))) ;) (if_statement "if ((iVar3 == 0) && (local_cc8 = FUN_0011d670(FUN_001038f1), local_cc8 == 0)) {\n    DAT_00126270 = 0;\n    DAT_00126278 = 0;\n    DAT_00126289 = '\x01';\n    local_d00 = getenv("LOCATE_PATH");\n    DAT_00126200 = 0;\n    unaff_RBP = &local_c70;\n    puVar22 = &DAT_0011eb4c;\n    unaff_R12D = 1;\n    local_d04 = 0;\n    local_cf0 = 0;\n    local_cec = 0;\n    local_cb0 = 0;\n    local_c98 = 0;\n    local_c94 = 0;\n    unaff_R15D = 0;\n    local_cd8 = local_cc8;\n    local_cc4 = 0;\n  }\n  else {\n    puVar22 = (undefined *)dcgettext(0,"The atexit library function failed",5);\n    piVar13 = __errno_location();\n    error(1,*piVar13,puVar22);\n    local_c98 = unaff_R12D;\n  }" if (parenthesized_expression "((iVar3 == 0) && (local_cc8 = FUN_0011d670(FUN_001038f1), local_cc8 == 0))" ( (binary_expression "(iVar3 == 0) && (local_cc8 = FUN_0011d670(FUN_001038f1), local_cc8 == 0)" (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) && (parenthesized_expression "(local_cc8 = FUN_0011d670(FUN_001038f1), local_cc8 == 0)" ( (comma_expression "local_cc8 = FUN_0011d670(FUN_001038f1), local_cc8 == 0" (assignment_expression "local_cc8 = FUN_0011d670(FUN_001038f1)" identifier = (call_expression "FUN_0011d670(FUN_001038f1)" identifier (argument_list "(FUN_001038f1)" ( identifier )))) , (binary_expression "local_cc8 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n    DAT_00126270 = 0;\n    DAT_00126278 = 0;\n    DAT_00126289 = '\x01';\n    local_d00 = getenv("LOCATE_PATH");\n    DAT_00126200 = 0;\n    unaff_RBP = &local_c70;\n    puVar22 = &DAT_0011eb4c;\n    unaff_R12D = 1;\n    local_d04 = 0;\n    local_cf0 = 0;\n    local_cec = 0;\n    local_cb0 = 0;\n    local_c98 = 0;\n    local_c94 = 0;\n    unaff_R15D = 0;\n    local_cd8 = local_cc8;\n    local_cc4 = 0;\n  }" { (expression_statement "DAT_00126270 = 0;" (assignment_expression "DAT_00126270 = 0" identifier = number_literal) ;) (expression_statement "DAT_00126278 = 0;" (assignment_expression "DAT_00126278 = 0" identifier = number_literal) ;) (expression_statement "DAT_00126289 = '\x01';" (assignment_expression "DAT_00126289 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "local_d00 = getenv("LOCATE_PATH");" (assignment_expression "local_d00 = getenv("LOCATE_PATH")" identifier = (call_expression "getenv("LOCATE_PATH")" identifier (argument_list "("LOCATE_PATH")" ( (string_literal ""LOCATE_PATH"" " string_content ") )))) ;) (expression_statement "DAT_00126200 = 0;" (assignment_expression "DAT_00126200 = 0" identifier = number_literal) ;) (expression_statement "unaff_RBP = &local_c70;" (assignment_expression "unaff_RBP = &local_c70" identifier = (pointer_expression "&local_c70" & identifier)) ;) (expression_statement "puVar22 = &DAT_0011eb4c;" (assignment_expression "puVar22 = &DAT_0011eb4c" identifier = (pointer_expression "&DAT_0011eb4c" & identifier)) ;) (expression_statement "unaff_R12D = 1;" (assignment_expression "unaff_R12D = 1" identifier = number_literal) ;) (expression_statement "local_d04 = 0;" (assignment_expression "local_d04 = 0" identifier = number_literal) ;) (expression_statement "local_cf0 = 0;" (assignment_expression "local_cf0 = 0" identifier = number_literal) ;) (expression_statement "local_cec = 0;" (assignment_expression "local_cec = 0" identifier = number_literal) ;) (expression_statement "local_cb0 = 0;" (assignment_expression "local_cb0 = 0" identifier = number_literal) ;) (expression_statement "local_c98 = 0;" (assignment_expression "local_c98 = 0" identifier = number_literal) ;) (expression_statement "local_c94 = 0;" (assignment_expression "local_c94 = 0" identifier = number_literal) ;) (expression_statement "unaff_R15D = 0;" (assignment_expression "unaff_R15D = 0" identifier = number_literal) ;) (expression_statement "local_cd8 = local_cc8;" (assignment_expression "local_cd8 = local_cc8" identifier = identifier) ;) (expression_statement "local_cc4 = 0;" (assignment_expression "local_cc4 = 0" identifier = number_literal) ;) }) (else_clause "else {\n    puVar22 = (undefined *)dcgettext(0,"The atexit library function failed",5);\n    piVar13 = __errno_location();\n    error(1,*piVar13,puVar22);\n    local_c98 = unaff_R12D;\n  }" else (compound_statement "{\n    puVar22 = (undefined *)dcgettext(0,"The atexit library function failed",5);\n    piVar13 = __errno_location();\n    error(1,*piVar13,puVar22);\n    local_c98 = unaff_R12D;\n  }" { (expression_statement "puVar22 = (undefined *)dcgettext(0,"The atexit library function failed",5);" (assignment_expression "puVar22 = (undefined *)dcgettext(0,"The atexit library function failed",5)" identifier = (cast_expression "(undefined *)dcgettext(0,"The atexit library function failed",5)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"The atexit library function failed",5)" identifier (argument_list "(0,"The atexit library function failed",5)" ( number_literal , (string_literal ""The atexit library function failed"" " string_content ") , number_literal ))))) ;) (expression_statement "piVar13 = __errno_location();" (assignment_expression "piVar13 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(1,*piVar13,puVar22);" (call_expression "error(1,*piVar13,puVar22)" identifier (argument_list "(1,*piVar13,puVar22)" ( number_literal , (pointer_expression "*piVar13" * identifier) , identifier ))) ;) (expression_statement "local_c98 = unaff_R12D;" (assignment_expression "local_c98 = unaff_R12D" identifier = identifier) ;) }))) (while_statement "while( true ) {\n    local_c70 = 0xffffffff;\n    iVar3 = getopt_long(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP);\n    if (iVar3 == -1) break;\n    if (iVar3 - 0x30U < 0x52) {\n                    \n                    \n      uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))();\n      return uVar6;\n    }\n    FUN_00103906(1);\n    local_cc4 = unaff_R12D;\n  }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n    local_c70 = 0xffffffff;\n    iVar3 = getopt_long(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP);\n    if (iVar3 == -1) break;\n    if (iVar3 - 0x30U < 0x52) {\n                    \n                    \n      uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))();\n      return uVar6;\n    }\n    FUN_00103906(1);\n    local_cc4 = unaff_R12D;\n  }" { (expression_statement "local_c70 = 0xffffffff;" (assignment_expression "local_c70 = 0xffffffff" identifier = number_literal) ;) (expression_statement "iVar3 = getopt_long(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP);" (assignment_expression "iVar3 = getopt_long(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP)" identifier = (call_expression "getopt_long(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP)" identifier (argument_list "(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP)" ( identifier , identifier , (string_literal ""Abcd:eEil:prsm0SwHPL"" " string_content ") , (pointer_expression "&PTR_s_database_00125720" & identifier) , identifier )))) ;) (if_statement "if (iVar3 == -1) break;" if (parenthesized_expression "(iVar3 == -1)" ( (binary_expression "iVar3 == -1" identifier == number_literal) )) (break_statement "break;" break ;)) (if_statement "if (iVar3 - 0x30U < 0x52) {\n                    \n                    \n      uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))();\n      return uVar6;\n    }" if (parenthesized_expression "(iVar3 - 0x30U < 0x52)" ( (binary_expression "iVar3 - 0x30U < 0x52" (binary_expression "iVar3 - 0x30U" identifier - number_literal) < number_literal) )) (compound_statement "{\n                    \n                    \n      uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))();\n      return uVar6;\n    }" { (expression_statement "uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))();" (assignment_expression "uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))()" identifier = (call_expression "(*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))()" (parenthesized_expression "(*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))" ( (pointer_expression "*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4))" * (cast_expression "(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4))" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4))" ( (binary_expression "puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)" identifier + (pointer_expression "*(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)" * (cast_expression "(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar22 + (ulong)(iVar3 - 0x30U) * 4)" ( (binary_expression "puVar22 + (ulong)(iVar3 - 0x30U) * 4" identifier + (binary_expression "(ulong)(iVar3 - 0x30U) * 4" (call_expression "(ulong)(iVar3 - 0x30U)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(iVar3 - 0x30U)" ( (binary_expression "iVar3 - 0x30U" identifier - number_literal) ))) * number_literal)) ))))) )))) )) (argument_list "()" ( )))) ;) (return_statement "return uVar6;" return identifier ;) })) (expression_statement "FUN_00103906(1);" (call_expression "FUN_00103906(1)" identifier (argument_list "(1)" ( number_literal ))) ;) (expression_statement "local_cc4 = unaff_R12D;" (assignment_expression "local_cc4 = unaff_R12D" identifier = identifier) ;) })) (if_statement "if ((-1 < (int)local_ca4) && (local_d00 != (char *)0x0)) {\n    close(local_ca4);\n    local_ca4 = 0xffffffff;\n  }" if (parenthesized_expression "((-1 < (int)local_ca4) && (local_d00 != (char *)0x0))" ( (binary_expression "(-1 < (int)local_ca4) && (local_d00 != (char *)0x0)" (parenthesized_expression "(-1 < (int)local_ca4)" ( (binary_expression "-1 < (int)local_ca4" number_literal < (cast_expression "(int)local_ca4" ( (type_descriptor "int" primitive_type) ) identifier)) )) && (parenthesized_expression "(local_d00 != (char *)0x0)" ( (binary_expression "local_d00 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (compound_statement "{\n    close(local_ca4);\n    local_ca4 = 0xffffffff;\n  }" { (expression_statement "close(local_ca4);" (call_expression "close(local_ca4)" identifier (argument_list "(local_ca4)" ( identifier ))) ;) (expression_statement "local_ca4 = 0xffffffff;" (assignment_expression "local_ca4 = 0xffffffff" identifier = number_literal) ;) })) (if_statement "if (local_c94 == 0 && local_cec == 0) {\n    if (optind == param_1) {\n      uVar12 = dcgettext(0,"pattern argument expected",5);\n      sVar14 = 0;\n      error(0,0,uVar12);\n      FUN_00103906(1);\n      goto LAB_00104874;\n    }\n    local_cb0 = 1;\n  }\n  else if ((local_cec != 0) && (optind == param_1)) {\n    local_cd8 = local_cc8;\n  }" if (parenthesized_expression "(local_c94 == 0 && local_cec == 0)" ( (binary_expression "local_c94 == 0 && local_cec == 0" (binary_expression "local_c94 == 0" identifier == number_literal) && (binary_expression "local_cec == 0" identifier == number_literal)) )) (compound_statement "{\n    if (optind == param_1) {\n      uVar12 = dcgettext(0,"pattern argument expected",5);\n      sVar14 = 0;\n      error(0,0,uVar12);\n      FUN_00103906(1);\n      goto LAB_00104874;\n    }\n    local_cb0 = 1;\n  }" { (if_statement "if (optind == param_1) {\n      uVar12 = dcgettext(0,"pattern argument expected",5);\n      sVar14 = 0;\n      error(0,0,uVar12);\n      FUN_00103906(1);\n      goto LAB_00104874;\n    }" if (parenthesized_expression "(optind == param_1)" ( (binary_expression "optind == param_1" identifier == identifier) )) (compound_statement "{\n      uVar12 = dcgettext(0,"pattern argument expected",5);\n      sVar14 = 0;\n      error(0,0,uVar12);\n      FUN_00103906(1);\n      goto LAB_00104874;\n    }" { (expression_statement "uVar12 = dcgettext(0,"pattern argument expected",5);" (assignment_expression "uVar12 = dcgettext(0,"pattern argument expected",5)" identifier = (call_expression "dcgettext(0,"pattern argument expected",5)" identifier (argument_list "(0,"pattern argument expected",5)" ( number_literal , (string_literal ""pattern argument expected"" " string_content ") , number_literal )))) ;) (expression_statement "sVar14 = 0;" (assignment_expression "sVar14 = 0" identifier = number_literal) ;) (expression_statement "error(0,0,uVar12);" (call_expression "error(0,0,uVar12)" identifier (argument_list "(0,0,uVar12)" ( number_literal , number_literal , identifier ))) ;) (expression_statement "FUN_00103906(1);" (call_expression "FUN_00103906(1)" identifier (argument_list "(1)" ( number_literal ))) ;) (goto_statement "goto LAB_00104874;" goto statement_identifier ;) })) (expression_statement "local_cb0 = 1;" (assignment_expression "local_cb0 = 1" identifier = number_literal) ;) }) (else_clause "else if ((local_cec != 0) && (optind == param_1)) {\n    local_cd8 = local_cc8;\n  }" else (if_statement "if ((local_cec != 0) && (optind == param_1)) {\n    local_cd8 = local_cc8;\n  }" if (parenthesized_expression "((local_cec != 0) && (optind == param_1))" ( (binary_expression "(local_cec != 0) && (optind == param_1)" (parenthesized_expression "(local_cec != 0)" ( (binary_expression "local_cec != 0" identifier != number_literal) )) && (parenthesized_expression "(optind == param_1)" ( (binary_expression "optind == param_1" identifier == identifier) ))) )) (compound_statement "{\n    local_cd8 = local_cc8;\n  }" { (expression_statement "local_cd8 = local_cc8;" (assignment_expression "local_cd8 = local_cc8" identifier = identifier) ;) })))) (expression_statement "iVar3 = isatty(1);" (assignment_expression "iVar3 = isatty(1)" identifier = (call_expression "isatty(1)" identifier (argument_list "(1)" ( number_literal )))) ;) (expression_statement "DAT_0012628a = iVar3 == 1;" (assignment_expression "DAT_0012628a = iVar3 == 1" identifier = (binary_expression "iVar3 == 1" identifier == number_literal)) ;) (if_statement "if (local_d00 != (char *)0x0) {\n    FUN_001063f9(local_d00,":",1,&local_c80,&local_c78);\n  }" if (parenthesized_expression "(local_d00 != (char *)0x0)" ( (binary_expression "local_d00 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    FUN_001063f9(local_d00,":",1,&local_c80,&local_c78);\n  }" { (expression_statement "FUN_001063f9(local_d00,":",1,&local_c80,&local_c78);" (call_expression "FUN_001063f9(local_d00,":",1,&local_c80,&local_c78)" identifier (argument_list "(local_d00,":",1,&local_c80,&local_c78)" ( identifier , (string_literal "":"" " string_content ") , number_literal , (pointer_expression "&local_c80" & identifier) , (pointer_expression "&local_c78" & identifier) ))) ;) })) (expression_statement "uVar4 = local_cf0 | 0x400000;" (assignment_expression "uVar4 = local_cf0 | 0x400000" identifier = (binary_expression "local_cf0 | 0x400000" identifier | number_literal)) ;) (if_statement "if (unaff_R15D == 0) {\n    uVar4 = local_cf0;\n  }" if (parenthesized_expression "(unaff_R15D == 0)" ( (binary_expression "unaff_R15D == 0" identifier == number_literal) )) (compound_statement "{\n    uVar4 = local_cf0;\n  }" { (expression_statement "uVar4 = local_cf0;" (assignment_expression "uVar4 = local_cf0" identifier = identifier) ;) })) (expression_statement "local_c89 = '\0';" (assignment_expression "local_c89 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;) (expression_statement "local_c90 = 0xffffffff;" (assignment_expression "local_c90 = 0xffffffff" identifier = number_literal) ;) (expression_statement "local_cf0 = uVar4;" (assignment_expression "local_cf0 = uVar4" identifier = identifier) ;) (while_statement "while ((uVar4 = local_ca4, local_cd8 == 0 || (DAT_00126278 < DAT_00126270))) {\n    DAT_00126268 = 0;\n    DAT_00126260 = 0;\n    DAT_00126258 = 0;\n    DAT_00126250 = 0;\n    DAT_00126248 = 0;\n    _DAT_00126240 = 0;\n    if (local_d00 == (char *)0x0) {\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = DAT_00126280;\n      local_cd0 = local_d00;\n      local_ca4 = local_c90;\n    }\n    else {\n      sVar14 = local_c78;\n      if (local_c78 == 1) {\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar4 = FUN_001038af(local_cf8);\n      if ((int)uVar4 < 0) {\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n    }\nLAB_00105254:\n    iVar3 = __fxstat(1,uVar4,&local_c58);\n    if (iVar3 == 0) {\n      local_cb8 = local_c58.st_size;\n      local_c68 = local_c58.st_mtim.tv_sec;\n      local_c60 = local_c58.st_mtim.tv_nsec;\n      tVar7 = time((time_t *)&local_c70);\n      if (tVar7 == -1) {\n        uVar12 = dcgettext(0,"time system call failed",5);\n        piVar13 = __errno_location();\n        error(0,*piVar13,uVar12);\n      }\n      else {\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &local_c68;\n    }\n    else {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (time_t *)0x0;\n    }\n    iVar3 = DAT_00126200;\n    uVar4 = optind;\n    uVar6 = (ulong)optind;\n    iVar5 = param_1 - optind;\n    local_cd4 = DAT_00126200;\n    local_b90 = 0;\n    local_bc8[1] = 0;\n    local_bc8[2] = 0;\n    local_b98 = local_cf8;\n    local_ba0 = local_ce0;\n    DAT_00126220 = 0;\n    DAT_00126218 = 0;\n    DAT_00126210 = 0;\n    DAT_00126288 = '\0';\n    local_bb0 = 0x80;\n    local_bb8 = (byte *)FUN_0010d559(0x80);\n    sVar14 = fread(local_bb8,1,2,local_ba0);\n    pbVar8 = local_bb8;\n    uVar24 = (ulong)(int)sVar14;\n    if (2 < uVar24) {\n                    \n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }\n    if ((uVar24 < 2) || (local_bb8[1] != 0)) {\nLAB_00105aa4:\n      FUN_001040e7(local_bc8,10,0);\n      sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0);\n      iVar3 = (int)sVar14 + (int)sVar20;\n      if (((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)) {\n        FUN_001040e7(local_bc8,0x100,0);\n        if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        uVar6 = FUN_0010ca58(0,8,local_cf8);\n        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar12,uVar6);\nLAB_00104daa:\n        uVar4 = (uint)uVar6;\n        FUN_001039a8(FUN_00103e25,0);\n      }\n      else {\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar5) {\n        plVar26 = param_2 + (int)uVar4;\n        do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);\n      }\n      lVar10 = DAT_00126218;\n      if (local_cd4 == 1) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }\n      }\n      else if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }\n      if (local_cec != 0) {\n        FUN_001039a8(FUN_00103a70,&DAT_00126240);\n      }\n      if (local_cb0 != 0) {\n        if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }\n      }\n      if (local_cd8 == 0) {\n        FUN_001039a8(FUN_001038a4,&DAT_00126270);\n      }\n      else {\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }\n      pcVar1 = local_b98;\n      if (iVar5 < 2) {\n        DAT_00126208 = FUN_00103755;\n      }\n      else {\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }\n      if (local_cec != 0) {\n        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar12,pcVar1,local_ca0);\n      }\n      local_bc8[0] = getc(local_ba0);\n      if ((local_bc8[0] != -1) && (local_cac != 0)) {\n        ungetc(local_bc8[0],local_ba0);\n        local_bc8[0] = 0;\n      }\n      do {\n        if (local_bc8[0] == -1) break;\n        iVar3 = (*DAT_00126208)(local_bc8);\n      } while (iVar3 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }\n        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar3 = ferror(local_ba0);\n      uVar6 = DAT_00126278;\n      if (iVar3 != 0) {\n        uVar12 = FUN_0010ca58(0,8,local_b98);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        uVar6 = 0;\n      }\n    }\n    else {\n      ppuVar15 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar23 = (char)*pbVar8 + -0x30;\n      if (iVar23 < 2) {\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar16,uVar12,0);\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar16,uVar12,iVar23);\n      uVar6 = 0;\n    }\nLAB_0010514b:\n    iVar3 = fclose(local_ce0);\n    if (iVar3 == -1) {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      goto LAB_0010468d;\n    }\n    if (local_cd0 != (char *)0x0) {\n      free(local_cd0);\n    }\n    if ((local_d00 == (char *)0x0) ||\n       (cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0')) break;\n  }" while (parenthesized_expression "((uVar4 = local_ca4, local_cd8 == 0 || (DAT_00126278 < DAT_00126270)))" ( (parenthesized_expression "(uVar4 = local_ca4, local_cd8 == 0 || (DAT_00126278 < DAT_00126270))" ( (comma_expression "uVar4 = local_ca4, local_cd8 == 0 || (DAT_00126278 < DAT_00126270)" (assignment_expression "uVar4 = local_ca4" identifier = identifier) , (binary_expression "local_cd8 == 0 || (DAT_00126278 < DAT_00126270)" (binary_expression "local_cd8 == 0" identifier == number_literal) || (parenthesized_expression "(DAT_00126278 < DAT_00126270)" ( (binary_expression "DAT_00126278 < DAT_00126270" identifier < identifier) )))) )) )) (compound_statement "{\n    DAT_00126268 = 0;\n    DAT_00126260 = 0;\n    DAT_00126258 = 0;\n    DAT_00126250 = 0;\n    DAT_00126248 = 0;\n    _DAT_00126240 = 0;\n    if (local_d00 == (char *)0x0) {\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = DAT_00126280;\n      local_cd0 = local_d00;\n      local_ca4 = local_c90;\n    }\n    else {\n      sVar14 = local_c78;\n      if (local_c78 == 1) {\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar4 = FUN_001038af(local_cf8);\n      if ((int)uVar4 < 0) {\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n    }\nLAB_00105254:\n    iVar3 = __fxstat(1,uVar4,&local_c58);\n    if (iVar3 == 0) {\n      local_cb8 = local_c58.st_size;\n      local_c68 = local_c58.st_mtim.tv_sec;\n      local_c60 = local_c58.st_mtim.tv_nsec;\n      tVar7 = time((time_t *)&local_c70);\n      if (tVar7 == -1) {\n        uVar12 = dcgettext(0,"time system call failed",5);\n        piVar13 = __errno_location();\n        error(0,*piVar13,uVar12);\n      }\n      else {\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &local_c68;\n    }\n    else {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (time_t *)0x0;\n    }\n    iVar3 = DAT_00126200;\n    uVar4 = optind;\n    uVar6 = (ulong)optind;\n    iVar5 = param_1 - optind;\n    local_cd4 = DAT_00126200;\n    local_b90 = 0;\n    local_bc8[1] = 0;\n    local_bc8[2] = 0;\n    local_b98 = local_cf8;\n    local_ba0 = local_ce0;\n    DAT_00126220 = 0;\n    DAT_00126218 = 0;\n    DAT_00126210 = 0;\n    DAT_00126288 = '\0';\n    local_bb0 = 0x80;\n    local_bb8 = (byte *)FUN_0010d559(0x80);\n    sVar14 = fread(local_bb8,1,2,local_ba0);\n    pbVar8 = local_bb8;\n    uVar24 = (ulong)(int)sVar14;\n    if (2 < uVar24) {\n                    \n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }\n    if ((uVar24 < 2) || (local_bb8[1] != 0)) {\nLAB_00105aa4:\n      FUN_001040e7(local_bc8,10,0);\n      sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0);\n      iVar3 = (int)sVar14 + (int)sVar20;\n      if (((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)) {\n        FUN_001040e7(local_bc8,0x100,0);\n        if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        uVar6 = FUN_0010ca58(0,8,local_cf8);\n        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar12,uVar6);\nLAB_00104daa:\n        uVar4 = (uint)uVar6;\n        FUN_001039a8(FUN_00103e25,0);\n      }\n      else {\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar5) {\n        plVar26 = param_2 + (int)uVar4;\n        do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);\n      }\n      lVar10 = DAT_00126218;\n      if (local_cd4 == 1) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }\n      }\n      else if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }\n      if (local_cec != 0) {\n        FUN_001039a8(FUN_00103a70,&DAT_00126240);\n      }\n      if (local_cb0 != 0) {\n        if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }\n      }\n      if (local_cd8 == 0) {\n        FUN_001039a8(FUN_001038a4,&DAT_00126270);\n      }\n      else {\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }\n      pcVar1 = local_b98;\n      if (iVar5 < 2) {\n        DAT_00126208 = FUN_00103755;\n      }\n      else {\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }\n      if (local_cec != 0) {\n        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar12,pcVar1,local_ca0);\n      }\n      local_bc8[0] = getc(local_ba0);\n      if ((local_bc8[0] != -1) && (local_cac != 0)) {\n        ungetc(local_bc8[0],local_ba0);\n        local_bc8[0] = 0;\n      }\n      do {\n        if (local_bc8[0] == -1) break;\n        iVar3 = (*DAT_00126208)(local_bc8);\n      } while (iVar3 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }\n        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar3 = ferror(local_ba0);\n      uVar6 = DAT_00126278;\n      if (iVar3 != 0) {\n        uVar12 = FUN_0010ca58(0,8,local_b98);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        uVar6 = 0;\n      }\n    }\n    else {\n      ppuVar15 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar23 = (char)*pbVar8 + -0x30;\n      if (iVar23 < 2) {\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar16,uVar12,0);\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar16,uVar12,iVar23);\n      uVar6 = 0;\n    }\nLAB_0010514b:\n    iVar3 = fclose(local_ce0);\n    if (iVar3 == -1) {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      goto LAB_0010468d;\n    }\n    if (local_cd0 != (char *)0x0) {\n      free(local_cd0);\n    }\n    if ((local_d00 == (char *)0x0) ||\n       (cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0')) break;\n  }" { (expression_statement "DAT_00126268 = 0;" (assignment_expression "DAT_00126268 = 0" identifier = number_literal) ;) (expression_statement "DAT_00126260 = 0;" (assignment_expression "DAT_00126260 = 0" identifier = number_literal) ;) (expression_statement "DAT_00126258 = 0;" (assignment_expression "DAT_00126258 = 0" identifier = number_literal) ;) (expression_statement "DAT_00126250 = 0;" (assignment_expression "DAT_00126250 = 0" identifier = number_literal) ;) (expression_statement "DAT_00126248 = 0;" (assignment_expression "DAT_00126248 = 0" identifier = number_literal) ;) (expression_statement "_DAT_00126240 = 0;" (assignment_expression "_DAT_00126240 = 0" identifier = number_literal) ;) (if_statement "if (local_d00 == (char *)0x0) {\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = DAT_00126280;\n      local_cd0 = local_d00;\n      local_ca4 = local_c90;\n    }\n    else {\n      sVar14 = local_c78;\n      if (local_c78 == 1) {\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar4 = FUN_001038af(local_cf8);\n      if ((int)uVar4 < 0) {\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n    }" if (parenthesized_expression "(local_d00 == (char *)0x0)" ( (binary_expression "local_d00 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = DAT_00126280;\n      local_cd0 = local_d00;\n      local_ca4 = local_c90;\n    }" { (if_statement "if (local_ca4 == 0xffffffff) break;" if (parenthesized_expression "(local_ca4 == 0xffffffff)" ( (binary_expression "local_ca4 == 0xffffffff" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "local_cf8 = DAT_00126280;" (assignment_expression "local_cf8 = DAT_00126280" identifier = identifier) ;) (expression_statement "local_cd0 = local_d00;" (assignment_expression "local_cd0 = local_d00" identifier = identifier) ;) (expression_statement "local_ca4 = local_c90;" (assignment_expression "local_ca4 = local_c90" identifier = identifier) ;) }) (else_clause "else {\n      sVar14 = local_c78;\n      if (local_c78 == 1) {\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar4 = FUN_001038af(local_cf8);\n      if ((int)uVar4 < 0) {\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n    }" else (compound_statement "{\n      sVar14 = local_c78;\n      if (local_c78 == 1) {\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar4 = FUN_001038af(local_cf8);\n      if ((int)uVar4 < 0) {\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n    }" { (expression_statement "sVar14 = local_c78;" (assignment_expression "sVar14 = local_c78" identifier = identifier) ;) (if_statement "if (local_c78 == 1) {\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }" if (parenthesized_expression "(local_c78 == 1)" ( (binary_expression "local_c78 == 1" identifier == number_literal) )) (compound_statement "{\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }" { (labeled_statement "LAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }" statement_identifier : (if_statement "if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }" if (parenthesized_expression "(local_d00[local_c80] == '-')" ( (binary_expression "local_d00[local_c80] == '-'" (subscript_expression "local_d00[local_c80]" identifier [ identifier ]) == (char_literal "'-'" ' character ')) )) (compound_statement "{\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }" { (if_statement "if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }" if (parenthesized_expression "(local_c89 == '\0')" ( (binary_expression "local_c89 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }" { (expression_statement "local_c89 = '\x01';" (assignment_expression "local_c89 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "local_cf8 = "<stdin>";" (assignment_expression "local_cf8 = "<stdin>"" identifier = (string_literal ""<stdin>"" " string_content ")) ;) (expression_statement "local_cd0 = (char *)0x0;" (assignment_expression "local_cd0 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar4 = local_cc8;" (assignment_expression "uVar4 = local_cc8" identifier = identifier) ;) (goto_statement "goto LAB_00105254;" goto statement_identifier ;) })) (expression_statement "uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);" (assignment_expression "uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5)" identifier = (call_expression "dcgettext(0,"warning: the locate database can only be read from stdin once.",5)" identifier (argument_list "(0,"warning: the locate database can only be read from stdin once.",5)" ( number_literal , (string_literal ""warning: the locate database can only be read from stdin once."" " string_content ") , number_literal )))) ;) (expression_statement "error(0,0,uVar12);" (call_expression "error(0,0,uVar12)" identifier (argument_list "(0,0,uVar12)" ( number_literal , number_literal , identifier ))) ;) (goto_statement "goto LAB_0010468d;" goto statement_identifier ;) }))) (if_statement "if (local_d00[local_c80] != '.') goto LAB_00104891;" if (parenthesized_expression "(local_d00[local_c80] != '.')" ( (binary_expression "local_d00[local_c80] != '.'" (subscript_expression "local_d00[local_c80]" identifier [ identifier ]) != (char_literal "'.'" ' character ')) )) (goto_statement "goto LAB_00104891;" goto statement_identifier ;)) (expression_statement "local_cf8 = "/var/cache/locate/locatedb";" (assignment_expression "local_cf8 = "/var/cache/locate/locatedb"" identifier = (string_literal ""/var/cache/locate/locatedb"" " string_content ")) ;) (expression_statement "local_cd0 = (char *)0x0;" (assignment_expression "local_cd0 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }" else (compound_statement "{\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }" { (expression_statement "local_cf8 = "/var/cache/locate/locatedb";" (assignment_expression "local_cf8 = "/var/cache/locate/locatedb"" identifier = (string_literal ""/var/cache/locate/locatedb"" " string_content ")) ;) (expression_statement "local_cd0 = (char *)0x0;" (assignment_expression "local_cd0 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }" if (parenthesized_expression "(local_c78 != 0)" ( (binary_expression "local_c78 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }" { (labeled_statement "LAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);" statement_identifier : (expression_statement "local_cf8 = strndup(local_d00 + local_c80,sVar14);" (assignment_expression "local_cf8 = strndup(local_d00 + local_c80,sVar14)" identifier = (call_expression "strndup(local_d00 + local_c80,sVar14)" identifier (argument_list "(local_d00 + local_c80,sVar14)" ( (binary_expression "local_d00 + local_c80" identifier + identifier) , identifier )))) ;)) (expression_statement "local_cd0 = local_cf8;" (assignment_expression "local_cd0 = local_cf8" identifier = identifier) ;) })) }))) (expression_statement "uVar4 = FUN_001038af(local_cf8);" (assignment_expression "uVar4 = FUN_001038af(local_cf8)" identifier = (call_expression "FUN_001038af(local_cf8)" identifier (argument_list "(local_cf8)" ( identifier )))) ;) (if_statement "if ((int)uVar4 < 0) {\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }" if (parenthesized_expression "((int)uVar4 < 0)" ( (binary_expression "(int)uVar4 < 0" (cast_expression "(int)uVar4" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }" { (expression_statement "uVar12 = FUN_0010ca58(0,8,local_cf8);" (assignment_expression "uVar12 = FUN_0010ca58(0,8,local_cf8)" identifier = (call_expression "FUN_0010ca58(0,8,local_cf8)" identifier (argument_list "(0,8,local_cf8)" ( number_literal , number_literal , identifier )))) ;) (expression_statement "piVar13 = __errno_location();" (assignment_expression "piVar13 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,*piVar13,&DAT_001207c7,uVar12);" (call_expression "error(0,*piVar13,&DAT_001207c7,uVar12)" identifier (argument_list "(0,*piVar13,&DAT_001207c7,uVar12)" ( number_literal , (pointer_expression "*piVar13" * identifier) , (pointer_expression "&DAT_001207c7" & identifier) , identifier ))) ;) (goto_statement "goto LAB_0010468d;" goto statement_identifier ;) })) }))) (labeled_statement "LAB_00105254:\n    iVar3 = __fxstat(1,uVar4,&local_c58);" statement_identifier : (expression_statement "iVar3 = __fxstat(1,uVar4,&local_c58);" (assignment_expression "iVar3 = __fxstat(1,uVar4,&local_c58)" identifier = (call_expression "__fxstat(1,uVar4,&local_c58)" identifier (argument_list "(1,uVar4,&local_c58)" ( number_literal , identifier , (pointer_expression "&local_c58" & identifier) )))) ;)) (if_statement "if (iVar3 == 0) {\n      local_cb8 = local_c58.st_size;\n      local_c68 = local_c58.st_mtim.tv_sec;\n      local_c60 = local_c58.st_mtim.tv_nsec;\n      tVar7 = time((time_t *)&local_c70);\n      if (tVar7 == -1) {\n        uVar12 = dcgettext(0,"time system call failed",5);\n        piVar13 = __errno_location();\n        error(0,*piVar13,uVar12);\n      }\n      else {\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &local_c68;\n    }\n    else {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (time_t *)0x0;\n    }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n      local_cb8 = local_c58.st_size;\n      local_c68 = local_c58.st_mtim.tv_sec;\n      local_c60 = local_c58.st_mtim.tv_nsec;\n      tVar7 = time((time_t *)&local_c70);\n      if (tVar7 == -1) {\n        uVar12 = dcgettext(0,"time system call failed",5);\n        piVar13 = __errno_location();\n        error(0,*piVar13,uVar12);\n      }\n      else {\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &local_c68;\n    }" { (expression_statement "local_cb8 = local_c58.st_size;" (assignment_expression "local_cb8 = local_c58.st_size" identifier = (field_expression "local_c58.st_size" identifier . field_identifier)) ;) (expression_statement "local_c68 = local_c58.st_mtim.tv_sec;" (assignment_expression "local_c68 = local_c58.st_mtim.tv_sec" identifier = (field_expression "local_c58.st_mtim.tv_sec" (field_expression "local_c58.st_mtim" identifier . field_identifier) . field_identifier)) ;) (expression_statement "local_c60 = local_c58.st_mtim.tv_nsec;" (assignment_expression "local_c60 = local_c58.st_mtim.tv_nsec" identifier = (field_expression "local_c58.st_mtim.tv_nsec" (field_expression "local_c58.st_mtim" identifier . field_identifier) . field_identifier)) ;) (expression_statement "tVar7 = time((time_t *)&local_c70);" (assignment_expression "tVar7 = time((time_t *)&local_c70)" identifier = (call_expression "time((time_t *)&local_c70)" identifier (argument_list "((time_t *)&local_c70)" ( (cast_expression "(time_t *)&local_c70" ( (type_descriptor "time_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_c70" & identifier)) )))) ;) (if_statement "if (tVar7 == -1) {\n        uVar12 = dcgettext(0,"time system call failed",5);\n        piVar13 = __errno_location();\n        error(0,*piVar13,uVar12);\n      }\n      else {\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }" if (parenthesized_expression "(tVar7 == -1)" ( (binary_expression "tVar7 == -1" identifier == number_literal) )) (compound_statement "{\n        uVar12 = dcgettext(0,"time system call failed",5);\n        piVar13 = __errno_location();\n        error(0,*piVar13,uVar12);\n      }" { (expression_statement "uVar12 = dcgettext(0,"time system call failed",5);" (assignment_expression "uVar12 = dcgettext(0,"time system call failed",5)" identifier = (call_expression "dcgettext(0,"time system call failed",5)" identifier (argument_list "(0,"time system call failed",5)" ( number_literal , (string_literal ""time system call failed"" " string_content ") , number_literal )))) ;) (expression_statement "piVar13 = __errno_location();" (assignment_expression "piVar13 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,*piVar13,uVar12);" (call_expression "error(0,*piVar13,uVar12)" identifier (argument_list "(0,*piVar13,uVar12)" ( number_literal , (pointer_expression "*piVar13" * identifier) , identifier ))) ;) }) (else_clause "else {\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }" else (compound_statement "{\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }" { (expression_statement "dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);" (assignment_expression "dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec)" identifier = (call_expression "difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec)" identifier (argument_list "(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec)" ( (call_expression "CONCAT44(uStack_c6c,local_c70)" identifier (argument_list "(uStack_c6c,local_c70)" ( identifier , identifier ))) , (field_expression "local_c58.st_mtim.tv_sec" (field_expression "local_c58.st_mtim" identifier . field_identifier) . field_identifier) )))) ;) (expression_statement "iVar3 = DAT_00126018;" (assignment_expression "iVar3 = DAT_00126018" identifier = identifier) ;) (if_statement "if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }" if (parenthesized_expression "((double)(uint)(DAT_00126018 * 0x15180) < dVar28)" ( (binary_expression "(double)(uint)(DAT_00126018 * 0x15180) < dVar28" (cast_expression "(double)(uint)(DAT_00126018 * 0x15180)" ( (type_descriptor "double" primitive_type) ) (call_expression "(uint)(DAT_00126018 * 0x15180)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(DAT_00126018 * 0x15180)" ( (binary_expression "DAT_00126018 * 0x15180" identifier * number_literal) )))) < identifier) )) (compound_statement "{\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }" { (expression_statement "uVar12 = dcgettext(0,&DAT_0011ed91,5);" (assignment_expression "uVar12 = dcgettext(0,&DAT_0011ed91,5)" identifier = (call_expression "dcgettext(0,&DAT_0011ed91,5)" identifier (argument_list "(0,&DAT_0011ed91,5)" ( number_literal , (pointer_expression "&DAT_0011ed91" & identifier) , number_literal )))) ;) (expression_statement "uVar16 = dcgettext(0,&DAT_0011ed91,5);" (assignment_expression "uVar16 = dcgettext(0,&DAT_0011ed91,5)" identifier = (call_expression "dcgettext(0,&DAT_0011ed91,5)" identifier (argument_list "(0,&DAT_0011ed91,5)" ( number_literal , (pointer_expression "&DAT_0011ed91" & identifier) , number_literal )))) ;) (expression_statement "uVar17 = FUN_0010ca58(0,8,local_cf8);" (assignment_expression "uVar17 = FUN_0010ca58(0,8,local_cf8)" identifier = (call_expression "FUN_0010ca58(0,8,local_cf8)" identifier (argument_list "(0,8,local_cf8)" ( number_literal , number_literal , identifier )))) ;) (expression_statement "uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);" (assignment_expression "uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5)" identifier = (call_expression "dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5)" identifier (argument_list "(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5)" ( number_literal , (string_literal ""warning: database %s is more than %u %s old (actual age is %.1f %s)"" " string_content ") , number_literal )))) ;) (expression_statement "error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);" (call_expression "error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12)" identifier (argument_list "(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12)" ( (binary_expression "dVar28 / _DAT_0011ed98" identifier / identifier) , number_literal , number_literal , identifier , identifier , identifier , identifier , identifier ))) ;) })) }))) (expression_statement "local_ce0 = fdopen(uVar4,"r");" (assignment_expression "local_ce0 = fdopen(uVar4,"r")" identifier = (call_expression "fdopen(uVar4,"r")" identifier (argument_list "(uVar4,"r")" ( identifier , (string_literal ""r"" " string_content ") )))) ;) (if_statement "if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;" if (parenthesized_expression "(local_ce0 == (FILE *)0x0)" ( (binary_expression "local_ce0 == (FILE *)0x0" identifier == (cast_expression "(FILE *)0x0" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00104b19;" goto statement_identifier ;)) (expression_statement "local_cc0 = &local_c68;" (assignment_expression "local_cc0 = &local_c68" identifier = (pointer_expression "&local_c68" & identifier)) ;) }) (else_clause "else {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (time_t *)0x0;\n    }" else (compound_statement "{\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (time_t *)0x0;\n    }" { (expression_statement "uVar12 = FUN_0010ca58(0,8,local_cf8);" (assignment_expression "uVar12 = FUN_0010ca58(0,8,local_cf8)" identifier = (call_expression "FUN_0010ca58(0,8,local_cf8)" identifier (argument_list "(0,8,local_cf8)" ( number_literal , number_literal , identifier )))) ;) (expression_statement "piVar13 = __errno_location();" (assignment_expression "piVar13 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,*piVar13,&DAT_001207c7,uVar12);" (call_expression "error(0,*piVar13,&DAT_001207c7,uVar12)" identifier (argument_list "(0,*piVar13,&DAT_001207c7,uVar12)" ( number_literal , (pointer_expression "*piVar13" * identifier) , (pointer_expression "&DAT_001207c7" & identifier) , identifier ))) ;) (expression_statement "local_ce0 = fdopen(uVar4,"r");" (assignment_expression "local_ce0 = fdopen(uVar4,"r")" identifier = (call_expression "fdopen(uVar4,"r")" identifier (argument_list "(uVar4,"r")" ( identifier , (string_literal ""r"" " string_content ") )))) ;) (if_statement "if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }" if (parenthesized_expression "(local_ce0 == (FILE *)0x0)" ( (binary_expression "local_ce0 == (FILE *)0x0" identifier == (cast_expression "(FILE *)0x0" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }" { (labeled_statement "LAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);" statement_identifier : (expression_statement "uVar12 = FUN_0010ca58(0,8,local_cf8);" (assignment_expression "uVar12 = FUN_0010ca58(0,8,local_cf8)" identifier = (call_expression "FUN_0010ca58(0,8,local_cf8)" identifier (argument_list "(0,8,local_cf8)" ( number_literal , number_literal , identifier )))) ;)) (expression_statement "piVar13 = __errno_location();" (assignment_expression "piVar13 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,*piVar13,&DAT_001207c7,uVar12);" (call_expression "error(0,*piVar13,&DAT_001207c7,uVar12)" identifier (argument_list "(0,*piVar13,&DAT_001207c7,uVar12)" ( number_literal , (pointer_expression "*piVar13" * identifier) , (pointer_expression "&DAT_001207c7" & identifier) , identifier ))) ;) (goto_statement "goto LAB_0010468d;" goto statement_identifier ;) })) (expression_statement "local_cb8 = 0;" (assignment_expression "local_cb8 = 0" identifier = number_literal) ;) (expression_statement "local_cc0 = (time_t *)0x0;" (assignment_expression "local_cc0 = (time_t *)0x0" identifier = (cast_expression "(time_t *)0x0" ( (type_descriptor "time_t *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) (expression_statement "iVar3 = DAT_00126200;" (assignment_expression "iVar3 = DAT_00126200" identifier = identifier) ;) (expression_statement "uVar4 = optind;" (assignment_expression "uVar4 = optind" identifier = identifier) ;) (expression_statement "uVar6 = (ulong)optind;" (assignment_expression "uVar6 = (ulong)optind" identifier = (cast_expression "(ulong)optind" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "iVar5 = param_1 - optind;" (assignment_expression "iVar5 = param_1 - optind" identifier = (binary_expression "param_1 - optind" identifier - identifier)) ;) (expression_statement "local_cd4 = DAT_00126200;" (assignment_expression "local_cd4 = DAT_00126200" identifier = identifier) ;) (expression_statement "local_b90 = 0;" (assignment_expression "local_b90 = 0" identifier = number_literal) ;) (expression_statement "local_bc8[1] = 0;" (assignment_expression "local_bc8[1] = 0" (subscript_expression "local_bc8[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "local_bc8[2] = 0;" (assignment_expression "local_bc8[2] = 0" (subscript_expression "local_bc8[2]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "local_b98 = local_cf8;" (assignment_expression "local_b98 = local_cf8" identifier = identifier) ;) (expression_statement "local_ba0 = local_ce0;" (assignment_expression "local_ba0 = local_ce0" identifier = identifier) ;) (expression_statement "DAT_00126220 = 0;" (assignment_expression "DAT_00126220 = 0" identifier = number_literal) ;) (expression_statement "DAT_00126218 = 0;" (assignment_expression "DAT_00126218 = 0" identifier = number_literal) ;) (expression_statement "DAT_00126210 = 0;" (assignment_expression "DAT_00126210 = 0" identifier = number_literal) ;) (expression_statement "DAT_00126288 = '\0';" (assignment_expression "DAT_00126288 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "local_bb0 = 0x80;" (assignment_expression "local_bb0 = 0x80" identifier = number_literal) ;) (expression_statement "local_bb8 = (byte *)FUN_0010d559(0x80);" (assignment_expression "local_bb8 = (byte *)FUN_0010d559(0x80)" identifier = (cast_expression "(byte *)FUN_0010d559(0x80)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0010d559(0x80)" identifier (argument_list "(0x80)" ( number_literal ))))) ;) (expression_statement "sVar14 = fread(local_bb8,1,2,local_ba0);" (assignment_expression "sVar14 = fread(local_bb8,1,2,local_ba0)" identifier = (call_expression "fread(local_bb8,1,2,local_ba0)" identifier (argument_list "(local_bb8,1,2,local_ba0)" ( identifier , number_literal , number_literal , identifier )))) ;) (expression_statement "pbVar8 = local_bb8;" (assignment_expression "pbVar8 = local_bb8" identifier = identifier) ;) (expression_statement "uVar24 = (ulong)(int)sVar14;" (assignment_expression "uVar24 = (ulong)(int)sVar14" identifier = (cast_expression "(ulong)(int)sVar14" ( (type_descriptor "ulong" type_identifier) ) (cast_expression "(int)sVar14" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (2 < uVar24) {\n                    \n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }" if (parenthesized_expression "(2 < uVar24)" ( (binary_expression "2 < uVar24" number_literal < identifier) )) (compound_statement "{\n                    \n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }" { (expression_statement "__assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");" (call_expression "__assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb")" identifier (argument_list "("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb")" ( (string_literal ""len <= 2"" " string_content ") , (string_literal ""locate.c"" " string_content ") , number_literal , (string_literal ""looking_at_slocate_locatedb"" " string_content ") ))) ;) })) (if_statement "if ((uVar24 < 2) || (local_bb8[1] != 0)) {\nLAB_00105aa4:\n      FUN_001040e7(local_bc8,10,0);\n      sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0);\n      iVar3 = (int)sVar14 + (int)sVar20;\n      if (((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)) {\n        FUN_001040e7(local_bc8,0x100,0);\n        if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        uVar6 = FUN_0010ca58(0,8,local_cf8);\n        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar12,uVar6);\nLAB_00104daa:\n        uVar4 = (uint)uVar6;\n        FUN_001039a8(FUN_00103e25,0);\n      }\n      else {\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar5) {\n        plVar26 = param_2 + (int)uVar4;\n        do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);\n      }\n      lVar10 = DAT_00126218;\n      if (local_cd4 == 1) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }\n      }\n      else if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }\n      if (local_cec != 0) {\n        FUN_001039a8(FUN_00103a70,&DAT_00126240);\n      }\n      if (local_cb0 != 0) {\n        if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }\n      }\n      if (local_cd8 == 0) {\n        FUN_001039a8(FUN_001038a4,&DAT_00126270);\n      }\n      else {\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }\n      pcVar1 = local_b98;\n      if (iVar5 < 2) {\n        DAT_00126208 = FUN_00103755;\n      }\n      else {\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }\n      if (local_cec != 0) {\n        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar12,pcVar1,local_ca0);\n      }\n      local_bc8[0] = getc(local_ba0);\n      if ((local_bc8[0] != -1) && (local_cac != 0)) {\n        ungetc(local_bc8[0],local_ba0);\n        local_bc8[0] = 0;\n      }\n      do {\n        if (local_bc8[0] == -1) break;\n        iVar3 = (*DAT_00126208)(local_bc8);\n      } while (iVar3 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }\n        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar3 = ferror(local_ba0);\n      uVar6 = DAT_00126278;\n      if (iVar3 != 0) {\n        uVar12 = FUN_0010ca58(0,8,local_b98);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        uVar6 = 0;\n      }\n    }\n    else {\n      ppuVar15 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar23 = (char)*pbVar8 + -0x30;\n      if (iVar23 < 2) {\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar16,uVar12,0);\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar16,uVar12,iVar23);\n      uVar6 = 0;\n    }" if (parenthesized_expression "((uVar24 < 2) || (local_bb8[1] != 0))" ( (binary_expression "(uVar24 < 2) || (local_bb8[1] != 0)" (parenthesized_expression "(uVar24 < 2)" ( (binary_expression "uVar24 < 2" identifier < number_literal) )) || (parenthesized_expression "(local_bb8[1] != 0)" ( (binary_expression "local_bb8[1] != 0" (subscript_expression "local_bb8[1]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\nLAB_00105aa4:\n      FUN_001040e7(local_bc8,10,0);\n      sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0);\n      iVar3 = (int)sVar14 + (int)sVar20;\n      if (((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)) {\n        FUN_001040e7(local_bc8,0x100,0);\n        if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        uVar6 = FUN_0010ca58(0,8,local_cf8);\n        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar12,uVar6);\nLAB_00104daa:\n        uVar4 = (uint)uVar6;\n        FUN_001039a8(FUN_00103e25,0);\n      }\n      else {\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar5) {\n        plVar26 = param_2 + (int)uVar4;\n        do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);\n      }\n      lVar10 = DAT_00126218;\n      if (local_cd4 == 1) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }\n      }\n      else if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }\n      if (local_cec != 0) {\n        FUN_001039a8(FUN_00103a70,&DAT_00126240);\n      }\n      if (local_cb0 != 0) {\n        if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }\n      }\n      if (local_cd8 == 0) {\n        FUN_001039a8(FUN_001038a4,&DAT_00126270);\n      }\n      else {\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }\n      pcVar1 = local_b98;\n      if (iVar5 < 2) {\n        DAT_00126208 = FUN_00103755;\n      }\n      else {\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }\n      if (local_cec != 0) {\n        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar12,pcVar1,local_ca0);\n      }\n      local_bc8[0] = getc(local_ba0);\n      if ((local_bc8[0] != -1) && (local_cac != 0)) {\n        ungetc(local_bc8[0],local_ba0);\n        local_bc8[0] = 0;\n      }\n      do {\n        if (local_bc8[0] == -1) break;\n        iVar3 = (*DAT_00126208)(local_bc8);\n      } while (iVar3 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }\n        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar3 = ferror(local_ba0);\n      uVar6 = DAT_00126278;\n      if (iVar3 != 0) {\n        uVar12 = FUN_0010ca58(0,8,local_b98);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        uVar6 = 0;\n      }\n    }" { (labeled_statement "LAB_00105aa4:\n      FUN_001040e7(local_bc8,10,0);" statement_identifier : (expression_statement "FUN_001040e7(local_bc8,10,0);" (call_expression "FUN_001040e7(local_bc8,10,0)" identifier (argument_list "(local_bc8,10,0)" ( identifier , number_literal , number_literal ))) ;)) (expression_statement "sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0);" (assignment_expression "sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0)" identifier = (call_expression "fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0)" identifier (argument_list "(local_bb8 + uVar24,1,10 - uVar24,local_ba0)" ( (binary_expression "local_bb8 + uVar24" identifier + identifier) , number_literal , (binary_expression "10 - uVar24" number_literal - identifier) , identifier )))) ;) (expression_statement "iVar3 = (int)sVar14 + (int)sVar20;" (assignment_expression "iVar3 = (int)sVar14 + (int)sVar20" identifier = (binary_expression "(int)sVar14 + (int)sVar20" (cast_expression "(int)sVar14" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)sVar20" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)) {\n        FUN_001040e7(local_bc8,0x100,0);\n        if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        uVar6 = FUN_0010ca58(0,8,local_cf8);\n        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar12,uVar6);\nLAB_00104daa:\n        uVar4 = (uint)uVar6;\n        FUN_001039a8(FUN_00103e25,0);\n      }\n      else {\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }" if (parenthesized_expression "(((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0))" ( (binary_expression "((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)" (parenthesized_expression "((ulong)(long)iVar3 < 10)" ( (binary_expression "(ulong)(long)iVar3 < 10" (cast_expression "(ulong)(long)iVar3" ( (type_descriptor "ulong" type_identifier) ) (cast_expression "(long)iVar3" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) < number_literal) )) || (parenthesized_expression "(local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)" ( (comma_expression "local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0" (assignment_expression "local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10)" identifier = (call_expression "memcmp(local_bb8,&DAT_0011eb40,10)" identifier (argument_list "(local_bb8,&DAT_0011eb40,10)" ( identifier , (pointer_expression "&DAT_0011eb40" & identifier) , number_literal )))) , (binary_expression "local_ca8 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n        FUN_001040e7(local_bc8,0x100,0);\n        if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        uVar6 = FUN_0010ca58(0,8,local_cf8);\n        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar12,uVar6);\nLAB_00104daa:\n        uVar4 = (uint)uVar6;\n        FUN_001039a8(FUN_00103e25,0);\n      }" { (expression_statement "FUN_001040e7(local_bc8,0x100,0);" (call_expression "FUN_001040e7(local_bc8,0x100,0)" identifier (argument_list "(local_bc8,0x100,0)" ( identifier , number_literal , number_literal ))) ;) (if_statement "if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }" if (parenthesized_expression "((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100))" ( (binary_expression "(0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)" (parenthesized_expression "(0xff < iVar3)" ( (binary_expression "0xff < iVar3" number_literal < identifier) )) || (parenthesized_expression "(sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)" ( (comma_expression "sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100" (assignment_expression "sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0)" identifier = (call_expression "fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0)" identifier (argument_list "(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0)" ( (binary_expression "local_bb8 + iVar3" identifier + identifier) , number_literal , (cast_expression "(long)(0x100 - iVar3)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (parenthesized_expression "(0x100 - iVar3)" ( (binary_expression "0x100 - iVar3" number_literal - identifier) ))) , identifier )))) , (binary_expression "iVar3 + (int)sVar14 == 0x100" (binary_expression "iVar3 + (int)sVar14" identifier + (cast_expression "(int)sVar14" ( (type_descriptor "int" primitive_type) ) identifier)) == number_literal)) ))) )) (compound_statement "{\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }" { (expression_statement "pbVar8 = local_b8c;" (assignment_expression "pbVar8 = local_b8c" identifier = identifier) ;) (expression_statement "pbVar21 = local_bb8;" (assignment_expression "pbVar21 = local_bb8" identifier = identifier) ;) (do_statement "do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);" do (compound_statement "{\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          }" { (expression_statement "*pbVar8 = *pbVar21;" (assignment_expression "*pbVar8 = *pbVar21" (pointer_expression "*pbVar8" * identifier) = (pointer_expression "*pbVar21" * identifier)) ;) (expression_statement "pbVar8[0x80] = pbVar21[1];" (assignment_expression "pbVar8[0x80] = pbVar21[1]" (subscript_expression "pbVar8[0x80]" identifier [ number_literal ]) = (subscript_expression "pbVar21[1]" identifier [ number_literal ])) ;) (expression_statement "pbVar21 = pbVar21 + 2;" (assignment_expression "pbVar21 = pbVar21 + 2" identifier = (binary_expression "pbVar21 + 2" identifier + number_literal)) ;) (expression_statement "pbVar8 = pbVar8 + 1;" (assignment_expression "pbVar8 = pbVar8 + 1" identifier = (binary_expression "pbVar8 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(pbVar8 != local_b0c)" ( (binary_expression "pbVar8 != local_b0c" identifier != identifier) )) ;) (expression_statement "FUN_001039a8(FUN_00104183,0);" (call_expression "FUN_001039a8(FUN_00104183,0)" identifier (argument_list "(FUN_00104183,0)" ( identifier , number_literal ))) ;) (expression_statement "local_cac = local_cc8;" (assignment_expression "local_cac = local_cc8" identifier = identifier) ;) (expression_statement "local_ca0 = "old";" (assignment_expression "local_ca0 = "old"" identifier = (string_literal ""old"" " string_content ")) ;) (expression_statement "local_ca8 = 1;" (assignment_expression "local_ca8 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_0010543a;" goto statement_identifier ;) })) (expression_statement "uVar6 = FUN_0010ca58(0,8,local_cf8);" (assignment_expression "uVar6 = FUN_0010ca58(0,8,local_cf8)" identifier = (call_expression "FUN_0010ca58(0,8,local_cf8)" identifier (argument_list "(0,8,local_cf8)" ( number_literal , number_literal , identifier )))) ;) (expression_statement "uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);" (assignment_expression "uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5)" identifier = (call_expression "dcgettext(0,"Old-format locate database %s is too short to be valid",5)" identifier (argument_list "(0,"Old-format locate database %s is too short to be valid",5)" ( number_literal , (string_literal ""Old-format locate database %s is too short to be valid"" " string_content ") , number_literal )))) ;) (expression_statement "error(1,0,uVar12,uVar6);" (call_expression "error(1,0,uVar12,uVar6)" identifier (argument_list "(1,0,uVar12,uVar6)" ( number_literal , number_literal , identifier , identifier ))) ;) (labeled_statement "LAB_00104daa:\n        uVar4 = (uint)uVar6;" statement_identifier : (expression_statement "uVar4 = (uint)uVar6;" (assignment_expression "uVar4 = (uint)uVar6" identifier = (cast_expression "(uint)uVar6" ( (type_descriptor "uint" type_identifier) ) identifier)) ;)) (expression_statement "FUN_001039a8(FUN_00103e25,0);" (call_expression "FUN_001039a8(FUN_00103e25,0)" identifier (argument_list "(FUN_00103e25,0)" ( identifier , number_literal ))) ;) }) (else_clause "else {\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }" else (compound_statement "{\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }" { (expression_statement "FUN_001039a8(FUN_00103e3d,0);" (call_expression "FUN_001039a8(FUN_00103e3d,0)" identifier (argument_list "(FUN_00103e3d,0)" ( identifier , number_literal ))) ;) (expression_statement "local_ca0 = "GNU LOCATE02";" (assignment_expression "local_ca0 = "GNU LOCATE02"" identifier = (string_literal ""GNU LOCATE02"" " string_content ")) ;) (expression_statement "local_cac = 0;" (assignment_expression "local_cac = 0" identifier = number_literal) ;) (labeled_statement "LAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;" statement_identifier : (if_statement "if (local_cc4 != 0) goto LAB_00104daa;" if (parenthesized_expression "(local_cc4 != 0)" ( (binary_expression "local_cc4 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00104daa;" goto statement_identifier ;))) }))) (if_statement "if (0 < iVar5) {\n        plVar26 = param_2 + (int)uVar4;\n        do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);\n      }" if (parenthesized_expression "(0 < iVar5)" ( (binary_expression "0 < iVar5" number_literal < identifier) )) (compound_statement "{\n        plVar26 = param_2 + (int)uVar4;\n        do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);\n      }" { (expression_statement "plVar26 = param_2 + (int)uVar4;" (assignment_expression "plVar26 = param_2 + (int)uVar4" identifier = (binary_expression "param_2 + (int)uVar4" identifier + (cast_expression "(int)uVar4" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (do_statement "do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);" do (compound_statement "{\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        }" { (expression_statement "DAT_00126288 = '\x01';" (assignment_expression "DAT_00126288 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "pcVar1 = (char *)*plVar26;" (assignment_expression "pcVar1 = (char *)*plVar26" identifier = (cast_expression "(char *)*plVar26" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*plVar26" * identifier))) ;) (if_statement "if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }" if (parenthesized_expression "(local_d04 == 0)" ( (binary_expression "local_d04 == 0" identifier == number_literal) )) (compound_statement "{\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }" { (expression_statement "pcVar11 = strpbrk(pcVar1,"*?[]\\");" (assignment_expression "pcVar11 = strpbrk(pcVar1,"*?[]\\")" identifier = (call_expression "strpbrk(pcVar1,"*?[]\\")" identifier (argument_list "(pcVar1,"*?[]\\")" ( identifier , (string_literal ""*?[]\\"" " string_content escape_sequence ") )))) ;) (if_statement "if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }" if (parenthesized_expression "(pcVar11 == (char *)0x0)" ( (binary_expression "pcVar11 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }" { (expression_statement "sVar14 = __ctype_get_mb_cur_max();" (assignment_expression "sVar14 = __ctype_get_mb_cur_max()" identifier = (call_expression "__ctype_get_mb_cur_max()" identifier (argument_list "()" ( )))) ;) (if_statement "if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }" if (parenthesized_expression "(sVar14 == 1)" ( (binary_expression "sVar14 == 1" identifier == number_literal) )) (compound_statement "{\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }" { (expression_statement "pcVar25 = FUN_00103ce1;" (assignment_expression "pcVar25 = FUN_00103ce1" identifier = identifier) ;) (if_statement "if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }" if (parenthesized_expression "(unaff_R15D != 0)" ( (binary_expression "unaff_R15D != 0" identifier != number_literal) )) (compound_statement "{\n                  pcVar25 = FUN_00103d36;\n                }" { (expression_statement "pcVar25 = FUN_00103d36;" (assignment_expression "pcVar25 = FUN_00103d36" identifier = identifier) ;) })) }) (else_clause "else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }" else (compound_statement "{\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }" { (expression_statement "pcVar25 = FUN_00103ca5;" (assignment_expression "pcVar25 = FUN_00103ca5" identifier = identifier) ;) (if_statement "if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }" if (parenthesized_expression "(unaff_R15D != 0)" ( (binary_expression "unaff_R15D != 0" identifier != number_literal) )) (compound_statement "{\n                  pcVar25 = FUN_00103cc3;\n                }" { (expression_statement "pcVar25 = FUN_00103cc3;" (assignment_expression "pcVar25 = FUN_00103cc3" identifier = identifier) ;) })) }))) (expression_statement "FUN_001039a8(pcVar25,pcVar1);" (call_expression "FUN_001039a8(pcVar25,pcVar1)" identifier (argument_list "(pcVar25,pcVar1)" ( identifier , identifier ))) ;) }) (else_clause "else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }" else (compound_statement "{\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }" { (if_statement "if (unaff_R15D == 0) goto LAB_00104ee7;" if (parenthesized_expression "(unaff_R15D == 0)" ( (binary_expression "unaff_R15D == 0" identifier == number_literal) )) (goto_statement "goto LAB_00104ee7;" goto statement_identifier ;)) (expression_statement "FUN_001039a8(FUN_00103db3,pcVar1);" (call_expression "FUN_001039a8(FUN_00103db3,pcVar1)" identifier (argument_list "(FUN_00103db3,pcVar1)" ( identifier , identifier ))) ;) }))) }) (else_clause "else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }" else (compound_statement "{\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }" { (expression_statement "puVar9 = (undefined8 *)FUN_0010d559(0x40);" (assignment_expression "puVar9 = (undefined8 *)FUN_0010d559(0x40)" identifier = (cast_expression "(undefined8 *)FUN_0010d559(0x40)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0010d559(0x40)" identifier (argument_list "(0x40)" ( number_literal ))))) ;) (expression_statement "*puVar9 = 0;" (assignment_expression "*puVar9 = 0" (pointer_expression "*puVar9" * identifier) = number_literal) ;) (expression_statement "puVar9[1] = 0;" (assignment_expression "puVar9[1] = 0" (subscript_expression "puVar9[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar9[2] = 0;" (assignment_expression "puVar9[2] = 0" (subscript_expression "puVar9[2]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar9[3] = 0;" (assignment_expression "puVar9[3] = 0" (subscript_expression "puVar9[3]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar9[4] = 0;" (assignment_expression "puVar9[4] = 0" (subscript_expression "puVar9[4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar9[5] = 0;" (assignment_expression "puVar9[5] = 0" (subscript_expression "puVar9[5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar9[6] = 0;" (assignment_expression "puVar9[6] = 0" (subscript_expression "puVar9[6]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar9[7] = 0;" (assignment_expression "puVar9[7] = 0" (subscript_expression "puVar9[7]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "FUN_0011b1c7((long)(int)local_cf0);" (call_expression "FUN_0011b1c7((long)(int)local_cf0)" identifier (argument_list "((long)(int)local_cf0)" ( (cast_expression "(long)(int)local_cf0" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)local_cf0" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ;) (expression_statement "puVar9[1] = 100;" (assignment_expression "puVar9[1] = 100" (subscript_expression "puVar9[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "uVar12 = FUN_0010d559(100);" (assignment_expression "uVar12 = FUN_0010d559(100)" identifier = (call_expression "FUN_0010d559(100)" identifier (argument_list "(100)" ( number_literal )))) ;) (expression_statement "*puVar9 = uVar12;" (assignment_expression "*puVar9 = uVar12" (pointer_expression "*puVar9" * identifier) = identifier) ;) (expression_statement "puVar9[4] = 0;" (assignment_expression "puVar9[4] = 0" (subscript_expression "puVar9[4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar9[3] = (long)(int)local_cf0;" (assignment_expression "puVar9[3] = (long)(int)local_cf0" (subscript_expression "puVar9[3]" identifier [ number_literal ]) = (cast_expression "(long)(int)local_cf0" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)local_cf0" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "puVar9[5] = 0;" (assignment_expression "puVar9[5] = 0" (subscript_expression "puVar9[5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "uVar6 = 0xffffffffffffffff;" (assignment_expression "uVar6 = 0xffffffffffffffff" identifier = number_literal) ;) (expression_statement "pcVar11 = pcVar1;" (assignment_expression "pcVar11 = pcVar1" identifier = identifier) ;) (do_statement "do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');" do (compound_statement "{\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            }" { (if_statement "if (uVar6 == 0) break;" if (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "uVar6 = uVar6 - 1;" (assignment_expression "uVar6 = uVar6 - 1" identifier = (binary_expression "uVar6 - 1" identifier - number_literal)) ;) (expression_statement "cVar2 = *pcVar11;" (assignment_expression "cVar2 = *pcVar11" identifier = (pointer_expression "*pcVar11" * identifier)) ;) (expression_statement "pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;" (assignment_expression "pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1" identifier = (binary_expression "pcVar11 + (ulong)bVar27 * -2 + 1" (binary_expression "pcVar11 + (ulong)bVar27 * -2" identifier + (binary_expression "(ulong)bVar27 * -2" (cast_expression "(ulong)bVar27" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(cVar2 != '\0')" ( (binary_expression "cVar2 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) ;) (expression_statement "lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);" (assignment_expression "lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9)" identifier = (call_expression "FUN_0011b159(pcVar1,~uVar6 - 1,puVar9)" identifier (argument_list "(pcVar1,~uVar6 - 1,puVar9)" ( identifier , (binary_expression "~uVar6 - 1" (unary_expression "~uVar6" ~ identifier) - number_literal) , identifier )))) ;) (if_statement "if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }" if (parenthesized_expression "(lVar10 == 0)" ( (binary_expression "lVar10 == 0" identifier == number_literal) )) (compound_statement "{\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }" { (expression_statement "FUN_001039a8(FUN_00103ddb,puVar9);" (call_expression "FUN_001039a8(FUN_00103ddb,puVar9)" identifier (argument_list "(FUN_00103ddb,puVar9)" ( identifier , identifier ))) ;) }) (else_clause "else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }" else (compound_statement "{\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }" { (expression_statement "error(1,0,&DAT_001207c7,lVar10);" (call_expression "error(1,0,&DAT_001207c7,lVar10)" identifier (argument_list "(1,0,&DAT_001207c7,lVar10)" ( number_literal , number_literal , (pointer_expression "&DAT_001207c7" & identifier) , identifier ))) ;) (labeled_statement "LAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);" statement_identifier : (expression_statement "FUN_001039a8(FUN_00103d8b,pcVar1);" (call_expression "FUN_001039a8(FUN_00103d8b,pcVar1)" identifier (argument_list "(FUN_00103d8b,pcVar1)" ( identifier , identifier ))) ;)) }))) }))) (expression_statement "plVar26 = plVar26 + 1;" (assignment_expression "plVar26 = plVar26 + 1" identifier = (binary_expression "plVar26 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1)" ( (binary_expression "plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1" identifier != (binary_expression "param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1" (binary_expression "param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1)" (binary_expression "param_2 + (long)(int)uVar4" identifier + (cast_expression "(long)(int)uVar4" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)uVar4" ( (type_descriptor "int" primitive_type) ) identifier))) + (call_expression "(ulong)(iVar5 - 1)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(iVar5 - 1)" ( (binary_expression "iVar5 - 1" identifier - number_literal) )))) + number_literal)) )) ;) })) (expression_statement "lVar10 = DAT_00126218;" (assignment_expression "lVar10 = DAT_00126218" identifier = identifier) ;) (if_statement "if (local_cd4 == 1) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }\n      }\n      else if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }" if (parenthesized_expression "(local_cd4 == 1)" ( (binary_expression "local_cd4 == 1" identifier == number_literal) )) (compound_statement "{\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }\n      }" { (expression_statement "DAT_00126288 = '\x01';" (assignment_expression "DAT_00126288 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (if_statement "if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }" if (parenthesized_expression "(DAT_00126014 == 0)" ( (binary_expression "DAT_00126014 == 0" identifier == number_literal) )) (compound_statement "{\n          FUN_001039a8(FUN_00103b4d,0);\n        }" { (expression_statement "FUN_001039a8(FUN_00103b4d,0);" (call_expression "FUN_001039a8(FUN_00103b4d,0)" identifier (argument_list "(FUN_00103b4d,0)" ( identifier , number_literal ))) ;) }) (else_clause "else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }" else (compound_statement "{\n          FUN_001039a8(FUN_00103bf9,0);\n        }" { (expression_statement "FUN_001039a8(FUN_00103bf9,0);" (call_expression "FUN_001039a8(FUN_00103bf9,0)" identifier (argument_list "(FUN_00103bf9,0)" ( identifier , number_literal ))) ;) }))) }) (else_clause "else if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }" else (if_statement "if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }" if (parenthesized_expression "(local_cd4 == 2)" ( (binary_expression "local_cd4 == 2" identifier == number_literal) )) (compound_statement "{\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }" { (expression_statement "DAT_00126288 = '\x01';" (assignment_expression "DAT_00126288 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (if_statement "if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }" if (parenthesized_expression "(DAT_00126014 == 0)" ( (binary_expression "DAT_00126014 == 0" identifier == number_literal) )) (compound_statement "{\n          FUN_001039a8(FUN_00103ba3,0);\n        }" { (expression_statement "FUN_001039a8(FUN_00103ba3,0);" (call_expression "FUN_001039a8(FUN_00103ba3,0)" identifier (argument_list "(FUN_00103ba3,0)" ( identifier , number_literal ))) ;) }) (else_clause "else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }" else (compound_statement "{\n          FUN_001039a8(FUN_00103c4f,0);\n        }" { (expression_statement "FUN_001039a8(FUN_00103c4f,0);" (call_expression "FUN_001039a8(FUN_00103c4f,0)" identifier (argument_list "(FUN_00103c4f,0)" ( identifier , number_literal ))) ;) }))) })))) (if_statement "if (local_cec != 0) {\n        FUN_001039a8(FUN_00103a70,&DAT_00126240);\n      }" if (parenthesized_expression "(local_cec != 0)" ( (binary_expression "local_cec != 0" identifier != number_literal) )) (compound_statement "{\n        FUN_001039a8(FUN_00103a70,&DAT_00126240);\n      }" { (expression_statement "FUN_001039a8(FUN_00103a70,&DAT_00126240);" (call_expression "FUN_001039a8(FUN_00103a70,&DAT_00126240)" identifier (argument_list "(FUN_00103a70,&DAT_00126240)" ( identifier , (pointer_expression "&DAT_00126240" & identifier) ))) ;) })) (if_statement "if (local_cb0 != 0) {\n        if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }\n      }" if (parenthesized_expression "(local_cb0 != 0)" ( (binary_expression "local_cb0 != 0" identifier != number_literal) )) (compound_statement "{\n        if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }\n      }" { (if_statement "if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }" if (parenthesized_expression "(DAT_00126289 == '\0')" ( (binary_expression "DAT_00126289 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          FUN_001039a8(FUN_001039fb,0);\n        }" { (expression_statement "FUN_001039a8(FUN_001039fb,0);" (call_expression "FUN_001039a8(FUN_001039fb,0)" identifier (argument_list "(FUN_001039fb,0)" ( identifier , number_literal ))) ;) }) (else_clause "else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }" else (compound_statement "{\n          FUN_001039a8(FUN_00103a2b,0);\n        }" { (expression_statement "FUN_001039a8(FUN_00103a2b,0);" (call_expression "FUN_001039a8(FUN_00103a2b,0)" identifier (argument_list "(FUN_00103a2b,0)" ( identifier , number_literal ))) ;) }))) })) (if_statement "if (local_cd8 == 0) {\n        FUN_001039a8(FUN_001038a4,&DAT_00126270);\n      }\n      else {\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }" if (parenthesized_expression "(local_cd8 == 0)" ( (binary_expression "local_cd8 == 0" identifier == number_literal) )) (compound_statement "{\n        FUN_001039a8(FUN_001038a4,&DAT_00126270);\n      }" { (expression_statement "FUN_001039a8(FUN_001038a4,&DAT_00126270);" (call_expression "FUN_001039a8(FUN_001038a4,&DAT_00126270)" identifier (argument_list "(FUN_001038a4,&DAT_00126270)" ( identifier , (pointer_expression "&DAT_00126270" & identifier) ))) ;) }) (else_clause "else {\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }" else (compound_statement "{\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }" { (expression_statement "FUN_001039a8(FUN_00103887,&DAT_00126270);" (call_expression "FUN_001039a8(FUN_00103887,&DAT_00126270)" identifier (argument_list "(FUN_00103887,&DAT_00126270)" ( identifier , (pointer_expression "&DAT_00126270" & identifier) ))) ;) }))) (expression_statement "pcVar1 = local_b98;" (assignment_expression "pcVar1 = local_b98" identifier = identifier) ;) (if_statement "if (iVar5 < 2) {\n        DAT_00126208 = FUN_00103755;\n      }\n      else {\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }" if (parenthesized_expression "(iVar5 < 2)" ( (binary_expression "iVar5 < 2" identifier < number_literal) )) (compound_statement "{\n        DAT_00126208 = FUN_00103755;\n      }" { (expression_statement "DAT_00126208 = FUN_00103755;" (assignment_expression "DAT_00126208 = FUN_00103755" identifier = identifier) ;) }) (else_clause "else {\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }" else (compound_statement "{\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }" { (expression_statement "DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);" (assignment_expression "DAT_00126210 = *(undefined8 *)(lVar10 + 0x10)" identifier = (pointer_expression "*(undefined8 *)(lVar10 + 0x10)" * (cast_expression "(undefined8 *)(lVar10 + 0x10)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar10 + 0x10)" ( (binary_expression "lVar10 + 0x10" identifier + number_literal) ))))) ;) (if_statement "if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }" if (parenthesized_expression "(local_c98 == 0)" ( (binary_expression "local_c98 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_00126208 = FUN_0010378e;\n        }" { (expression_statement "DAT_00126208 = FUN_0010378e;" (assignment_expression "DAT_00126208 = FUN_0010378e" identifier = identifier) ;) }) (else_clause "else {\n          DAT_00126208 = FUN_0010380e;\n        }" else (compound_statement "{\n          DAT_00126208 = FUN_0010380e;\n        }" { (expression_statement "DAT_00126208 = FUN_0010380e;" (assignment_expression "DAT_00126208 = FUN_0010380e" identifier = identifier) ;) }))) }))) (if_statement "if (local_cec != 0) {\n        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar12,pcVar1,local_ca0);\n      }" if (parenthesized_expression "(local_cec != 0)" ( (binary_expression "local_cec != 0" identifier != number_literal) )) (compound_statement "{\n        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar12,pcVar1,local_ca0);\n      }" { (expression_statement "uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5)" identifier = (call_expression "dcgettext(0,"Database %s is in the %s format.\n",5)" identifier (argument_list "(0,"Database %s is in the %s format.\n",5)" ( number_literal , (string_literal ""Database %s is in the %s format.\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "__printf_chk(1,uVar12,pcVar1,local_ca0);" (call_expression "__printf_chk(1,uVar12,pcVar1,local_ca0)" identifier (argument_list "(1,uVar12,pcVar1,local_ca0)" ( number_literal , identifier , identifier , identifier ))) ;) })) (expression_statement "local_bc8[0] = getc(local_ba0);" (assignment_expression "local_bc8[0] = getc(local_ba0)" (subscript_expression "local_bc8[0]" identifier [ number_literal ]) = (call_expression "getc(local_ba0)" identifier (argument_list "(local_ba0)" ( identifier )))) ;) (if_statement "if ((local_bc8[0] != -1) && (local_cac != 0)) {\n        ungetc(local_bc8[0],local_ba0);\n        local_bc8[0] = 0;\n      }" if (parenthesized_expression "((local_bc8[0] != -1) && (local_cac != 0))" ( (binary_expression "(local_bc8[0] != -1) && (local_cac != 0)" (parenthesized_expression "(local_bc8[0] != -1)" ( (binary_expression "local_bc8[0] != -1" (subscript_expression "local_bc8[0]" identifier [ number_literal ]) != number_literal) )) && (parenthesized_expression "(local_cac != 0)" ( (binary_expression "local_cac != 0" identifier != number_literal) ))) )) (compound_statement "{\n        ungetc(local_bc8[0],local_ba0);\n        local_bc8[0] = 0;\n      }" { (expression_statement "ungetc(local_bc8[0],local_ba0);" (call_expression "ungetc(local_bc8[0],local_ba0)" identifier (argument_list "(local_bc8[0],local_ba0)" ( (subscript_expression "local_bc8[0]" identifier [ number_literal ]) , identifier ))) ;) (expression_statement "local_bc8[0] = 0;" (assignment_expression "local_bc8[0] = 0" (subscript_expression "local_bc8[0]" identifier [ number_literal ]) = number_literal) ;) })) (do_statement "do {\n        if (local_bc8[0] == -1) break;\n        iVar3 = (*DAT_00126208)(local_bc8);\n      } while (iVar3 != 8);" do (compound_statement "{\n        if (local_bc8[0] == -1) break;\n        iVar3 = (*DAT_00126208)(local_bc8);\n      }" { (if_statement "if (local_bc8[0] == -1) break;" if (parenthesized_expression "(local_bc8[0] == -1)" ( (binary_expression "local_bc8[0] == -1" (subscript_expression "local_bc8[0]" identifier [ number_literal ]) == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar3 = (*DAT_00126208)(local_bc8);" (assignment_expression "iVar3 = (*DAT_00126208)(local_bc8)" identifier = (call_expression "(*DAT_00126208)(local_bc8)" (parenthesized_expression "(*DAT_00126208)" ( (pointer_expression "*DAT_00126208" * identifier) )) (argument_list "(local_bc8)" ( identifier )))) ;) }) while (parenthesized_expression "(iVar3 != 8)" ( (binary_expression "iVar3 != 8" identifier != number_literal) )) ;) (if_statement "if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }\n        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }\n      }" if (parenthesized_expression "(local_cec != 0)" ( (binary_expression "local_cec != 0" identifier != number_literal) )) (compound_statement "{\n        if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }\n        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }\n      }" { (if_statement "if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }" if (parenthesized_expression "(local_ca8 != 0)" ( (binary_expression "local_ca8 != 0" identifier != number_literal) )) (compound_statement "{\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }" { (expression_statement "uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);" (assignment_expression "uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5)" identifier = (call_expression "dcgettext(0,"The database has little-endian machine-word encoding.\n",5)" identifier (argument_list "(0,"The database has little-endian machine-word encoding.\n",5)" ( number_literal , (string_literal ""The database has little-endian machine-word encoding.\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);" (assignment_expression "uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5)" identifier = (call_expression "dcgettext(0,"The database has big-endian machine-word encoding.\n",5)" identifier (argument_list "(0,"The database has big-endian machine-word encoding.\n",5)" ( number_literal , (string_literal ""The database has big-endian machine-word encoding.\n"" " string_content escape_sequence ") , number_literal )))) ;) (if_statement "if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }" if (parenthesized_expression "(local_b90 == 1)" ( (binary_expression "local_b90 == 1" identifier == number_literal) )) (compound_statement "{\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }" { (expression_statement "__printf_chk(1,&DAT_001207c7,uVar12);" (call_expression "__printf_chk(1,&DAT_001207c7,uVar12)" identifier (argument_list "(1,&DAT_001207c7,uVar12)" ( number_literal , (pointer_expression "&DAT_001207c7" & identifier) , identifier ))) ;) }) (else_clause "else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }" else (if_statement "if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }" if (parenthesized_expression "(local_b90 == 2)" ( (binary_expression "local_b90 == 2" identifier == number_literal) )) (compound_statement "{\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }" { (expression_statement "__printf_chk(1,&DAT_001207c7,uVar16);" (call_expression "__printf_chk(1,&DAT_001207c7,uVar16)" identifier (argument_list "(1,&DAT_001207c7,uVar16)" ( number_literal , (pointer_expression "&DAT_001207c7" & identifier) , identifier ))) ;) }) (else_clause "else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }" else (compound_statement "{\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }" { (expression_statement "uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);" (assignment_expression "uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5)" identifier = (call_expression "dcgettext(0,"The database machine-word encoding order is not obvious.\n",5)" identifier (argument_list "(0,"The database machine-word encoding order is not obvious.\n",5)" ( number_literal , (string_literal ""The database machine-word encoding order is not obvious.\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "__printf_chk(1,uVar12);" (call_expression "__printf_chk(1,uVar12)" identifier (argument_list "(1,uVar12)" ( number_literal , identifier ))) ;) }))))) })) (if_statement "if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }" if (parenthesized_expression "(local_cc0 != (time_t *)0x0 || local_cb8 != 0)" ( (binary_expression "local_cc0 != (time_t *)0x0 || local_cb8 != 0" (binary_expression "local_cc0 != (time_t *)0x0" identifier != (cast_expression "(time_t *)0x0" ( (type_descriptor "time_t *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) || (binary_expression "local_cb8 != 0" identifier != number_literal)) )) (compound_statement "{\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }" { (if_statement "if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }" if (parenthesized_expression "((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0))" ( (binary_expression "(local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)" (parenthesized_expression "(local_cc0 != (time_t *)0x0)" ( (binary_expression "local_cc0 != (time_t *)0x0" identifier != (cast_expression "(time_t *)0x0" ( (type_descriptor "time_t *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(__tp = localtime(local_cc0), __tp != (tm *)0x0)" ( (comma_expression "__tp = localtime(local_cc0), __tp != (tm *)0x0" (assignment_expression "__tp = localtime(local_cc0)" identifier = (call_expression "localtime(local_cc0)" identifier (argument_list "(local_cc0)" ( identifier )))) , (binary_expression "__tp != (tm *)0x0" identifier != (cast_expression "(tm *)0x0" ( (type_descriptor "tm *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ))) )) (compound_statement "{\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }" { (expression_statement "sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);" (assignment_expression "sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp)" identifier = (call_expression "strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp)" identifier (argument_list "(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp)" ( identifier , number_literal , (string_literal ""%Y:%m:%d %H:%M:%S"" " string_content ") , identifier )))) ;) (if_statement "if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }" if (parenthesized_expression "(sVar14 != 0x13)" ( (binary_expression "sVar14 != 0x13" identifier != number_literal) )) (compound_statement "{\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }" { (expression_statement "__assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");" (call_expression "__assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats")" identifier (argument_list "("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats")" ( (string_literal ""printed == TIME_BUF_LEN-1"" " string_content ") , (string_literal ""locate.c"" " string_content ") , number_literal , (string_literal ""print_stats"" " string_content ") ))) ;) })) (if_statement "if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }" if (parenthesized_expression "(local_2c5 != '\0')" ( (binary_expression "local_2c5 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }" { (expression_statement "__assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");" (call_expression "__assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats")" identifier (argument_list "("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats")" ( (string_literal ""whenbuf[TIME_BUF_LEN-1] == 0"" " string_content ") , (string_literal ""locate.c"" " string_content ") , number_literal , (string_literal ""print_stats"" " string_content ") ))) ;) })) (if_statement "if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }" if (parenthesized_expression "(local_2c6 == '\0')" ( (binary_expression "local_2c6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }" { (expression_statement "__assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");" (call_expression "__assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats")" identifier (argument_list "("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats")" ( (string_literal ""whenbuf[TIME_BUF_LEN-2] != 0"" " string_content ") , (string_literal ""locate.c"" " string_content ") , number_literal , (string_literal ""print_stats"" " string_content ") ))) ;) })) (expression_statement "tVar7 = local_cc0[1];" (assignment_expression "tVar7 = local_cc0[1]" identifier = (subscript_expression "local_cc0[1]" identifier [ number_literal ])) ;) (expression_statement "uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);" (assignment_expression "uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5)" identifier = (call_expression "dcgettext(0,"Database was last modified at %s.%09ld",5)" identifier (argument_list "(0,"Database was last modified at %s.%09ld",5)" ( number_literal , (string_literal ""Database was last modified at %s.%09ld"" " string_content ") , number_literal )))) ;) (expression_statement "__printf_chk(1,uVar12,local_2d8,tVar7);" (call_expression "__printf_chk(1,uVar12,local_2d8,tVar7)" identifier (argument_list "(1,uVar12,local_2d8,tVar7)" ( number_literal , identifier , identifier , identifier ))) ;) (expression_statement "sVar14 = strftime(local_2d8,0x14,"%z",__tp);" (assignment_expression "sVar14 = strftime(local_2d8,0x14,"%z",__tp)" identifier = (call_expression "strftime(local_2d8,0x14,"%z",__tp)" identifier (argument_list "(local_2d8,0x14,"%z",__tp)" ( identifier , number_literal , (string_literal ""%z"" " string_content ") , identifier )))) ;) (if_statement "if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }" if (parenthesized_expression "(sVar14 != 5)" ( (binary_expression "sVar14 != 5" identifier != number_literal) )) (compound_statement "{\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }" { (expression_statement "__assert_fail("printed == 5","locate.c",0x351,"print_stats");" (call_expression "__assert_fail("printed == 5","locate.c",0x351,"print_stats")" identifier (argument_list "("printed == 5","locate.c",0x351,"print_stats")" ( (string_literal ""printed == 5"" " string_content ") , (string_literal ""locate.c"" " string_content ") , number_literal , (string_literal ""print_stats"" " string_content ") ))) ;) })) (expression_statement "__printf_chk(1," %s\n",local_2d8);" (call_expression "__printf_chk(1," %s\n",local_2d8)" identifier (argument_list "(1," %s\n",local_2d8)" ( number_literal , (string_literal "" %s\n"" " string_content escape_sequence ") , identifier ))) ;) })) (expression_statement "uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);" (assignment_expression "uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1)" identifier = (call_expression "FUN_0010670e(local_cb8,local_a88,0,1,1)" identifier (argument_list "(local_cb8,local_a88,0,1,1)" ( identifier , identifier , number_literal , number_literal , number_literal )))) ;) (expression_statement "uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);" (assignment_expression "uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5)" identifier = (call_expression "dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5)" identifier (argument_list "(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5)" ( number_literal , (string_literal ""Locate database size: %s byte\n"" " string_content escape_sequence ") , (string_literal ""Locate database size: %s bytes\n"" " string_content escape_sequence ") , identifier , number_literal )))) ;) (expression_statement "__printf_chk(1,uVar16,uVar12);" (call_expression "__printf_chk(1,uVar16,uVar12)" identifier (argument_list "(1,uVar16,uVar12)" ( number_literal , identifier , identifier ))) ;) (expression_statement "uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);" (assignment_expression "uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1)" identifier = (call_expression "FUN_0010670e(DAT_00126248,local_a88,0,1,1)" identifier (argument_list "(DAT_00126248,local_a88,0,1,1)" ( identifier , identifier , number_literal , number_literal , number_literal )))) ;) (if_statement "if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }" if (parenthesized_expression "(DAT_00126288 == '\0')" ( (binary_expression "DAT_00126288 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }" { (expression_statement "uVar16 = dcgettext(0,"All Filenames: %s\n",5);" (assignment_expression "uVar16 = dcgettext(0,"All Filenames: %s\n",5)" identifier = (call_expression "dcgettext(0,"All Filenames: %s\n",5)" identifier (argument_list "(0,"All Filenames: %s\n",5)" ( number_literal , (string_literal ""All Filenames: %s\n"" " string_content escape_sequence ") , number_literal )))) ;) }) (else_clause "else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }" else (compound_statement "{\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }" { (expression_statement "uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);" (assignment_expression "uVar16 = dcgettext(0,"Matching Filenames: %s\n",5)" identifier = (call_expression "dcgettext(0,"Matching Filenames: %s\n",5)" identifier (argument_list "(0,"Matching Filenames: %s\n",5)" ( number_literal , (string_literal ""Matching Filenames: %s\n"" " string_content escape_sequence ") , number_literal )))) ;) }))) (expression_statement "__printf_chk(1,uVar16,uVar12);" (call_expression "__printf_chk(1,uVar16,uVar12)" identifier (argument_list "(1,uVar16,uVar12)" ( number_literal , identifier , identifier ))) ;) (expression_statement "uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);" (assignment_expression "uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1)" identifier = (call_expression "FUN_0010670e(DAT_00126268,local_2d8,0,1,1)" identifier (argument_list "(DAT_00126268,local_2d8,0,1,1)" ( identifier , identifier , number_literal , number_literal , number_literal )))) ;) (expression_statement "uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);" (assignment_expression "uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1)" identifier = (call_expression "FUN_0010670e(DAT_00126260,local_568,0,1,1)" identifier (argument_list "(DAT_00126260,local_568,0,1,1)" ( identifier , identifier , number_literal , number_literal , number_literal )))) ;) (expression_statement "uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);" (assignment_expression "uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1)" identifier = (call_expression "FUN_0010670e(DAT_00126258,local_7f8,0,1,1)" identifier (argument_list "(DAT_00126258,local_7f8,0,1,1)" ( identifier , identifier , number_literal , number_literal , number_literal )))) ;) (expression_statement "uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);" (assignment_expression "uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1)" identifier = (call_expression "FUN_0010670e(DAT_00126250,local_a88,0,1,1)" identifier (argument_list "(DAT_00126250,local_a88,0,1,1)" ( identifier , identifier , number_literal , number_literal , number_literal )))) ;) (expression_statement "uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);" (assignment_expression "uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5)" identifier = (call_expression "dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5)" identifier (argument_list "(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5)" ( number_literal , (string_literal ""File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"" " string_content escape_sequence string_content escape_sequence escape_sequence escape_sequence string_content escape_sequence escape_sequence string_content escape_sequence escape_sequence string_content escape_sequence ") , number_literal )))) ;) (expression_statement "__printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);" (call_expression "__printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12)" identifier (argument_list "(1,uVar19,uVar18,uVar17,uVar16,uVar12)" ( number_literal , identifier , identifier , identifier , identifier , identifier ))) ;) (if_statement "if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }" if (parenthesized_expression "(iVar5 == 0)" ( (binary_expression "iVar5 == 0" identifier == number_literal) )) (compound_statement "{\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }" { (if_statement "if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }" if (parenthesized_expression "(DAT_00126288 == '\0')" ( (binary_expression "DAT_00126288 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }" { (if_statement "if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }" if (parenthesized_expression "(DAT_00126250 == 0)" ( (binary_expression "DAT_00126250 == 0" identifier == number_literal) )) (compound_statement "{\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }" { (expression_statement "uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Compression ratio is undefined\n",5)" identifier = (call_expression "dcgettext(0,"Compression ratio is undefined\n",5)" identifier (argument_list "(0,"Compression ratio is undefined\n",5)" ( number_literal , (string_literal ""Compression ratio is undefined\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "__printf_chk(1,uVar12);" (call_expression "__printf_chk(1,uVar12)" identifier (argument_list "(1,uVar12)" ( number_literal , identifier ))) ;) }) (else_clause "else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }" else (compound_statement "{\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }" { (expression_statement "local_ce8 = (double)DAT_00126250;" (assignment_expression "local_ce8 = (double)DAT_00126250" identifier = (cast_expression "(double)DAT_00126250" ( (type_descriptor "double" primitive_type) ) identifier)) ;) (expression_statement "uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5)" identifier = (call_expression "dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5)" identifier (argument_list "(0,"Compression ratio %4.2f%% (higher is better)\n",5)" ( number_literal , (string_literal ""Compression ratio %4.2f%% (higher is better)\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "__printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;" (call_expression "__printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)" identifier (argument_list "(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)" ( (binary_expression "((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8" (parenthesized_expression "((local_ce8 - (double)local_cb8) * _DAT_0011eda0)" ( (binary_expression "(local_ce8 - (double)local_cb8) * _DAT_0011eda0" (parenthesized_expression "(local_ce8 - (double)local_cb8)" ( (binary_expression "local_ce8 - (double)local_cb8" identifier - (cast_expression "(double)local_cb8" ( (type_descriptor "double" primitive_type) ) identifier)) )) * identifier) )) / identifier) , number_literal , identifier ))) ;) }))) }) (else_clause "else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }" else (compound_statement "{\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }" { (expression_statement "uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);" (assignment_expression "uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5)" identifier = (call_expression "dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5)" identifier (argument_list "(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5)" ( number_literal , (string_literal ""Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "__printf_chk(1,uVar12);" (call_expression "__printf_chk(1,uVar12)" identifier (argument_list "(1,uVar12)" ( number_literal , identifier ))) ;) }))) })) (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;) })) })) (expression_statement "iVar3 = ferror(local_ba0);" (assignment_expression "iVar3 = ferror(local_ba0)" identifier = (call_expression "ferror(local_ba0)" identifier (argument_list "(local_ba0)" ( identifier )))) ;) (expression_statement "uVar6 = DAT_00126278;" (assignment_expression "uVar6 = DAT_00126278" identifier = identifier) ;) (if_statement "if (iVar3 != 0) {\n        uVar12 = FUN_0010ca58(0,8,local_b98);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        uVar6 = 0;\n      }" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n        uVar12 = FUN_0010ca58(0,8,local_b98);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        uVar6 = 0;\n      }" { (expression_statement "uVar12 = FUN_0010ca58(0,8,local_b98);" (assignment_expression "uVar12 = FUN_0010ca58(0,8,local_b98)" identifier = (call_expression "FUN_0010ca58(0,8,local_b98)" identifier (argument_list "(0,8,local_b98)" ( number_literal , number_literal , identifier )))) ;) (expression_statement "piVar13 = __errno_location();" (assignment_expression "piVar13 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,*piVar13,&DAT_001207c7,uVar12);" (call_expression "error(0,*piVar13,&DAT_001207c7,uVar12)" identifier (argument_list "(0,*piVar13,&DAT_001207c7,uVar12)" ( number_literal , (pointer_expression "*piVar13" * identifier) , (pointer_expression "&DAT_001207c7" & identifier) , identifier ))) ;) (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;) })) }) (else_clause "else {\n      ppuVar15 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar23 = (char)*pbVar8 + -0x30;\n      if (iVar23 < 2) {\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar16,uVar12,0);\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar16,uVar12,iVar23);\n      uVar6 = 0;\n    }" else (compound_statement "{\n      ppuVar15 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar23 = (char)*pbVar8 + -0x30;\n      if (iVar23 < 2) {\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar16,uVar12,0);\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar16,uVar12,iVar23);\n      uVar6 = 0;\n    }" { (expression_statement "ppuVar15 = __ctype_b_loc();" (assignment_expression "ppuVar15 = __ctype_b_loc()" identifier = (call_expression "__ctype_b_loc()" identifier (argument_list "()" ( )))) ;) (if_statement "if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;" if (parenthesized_expression "((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0)" ( (binary_expression "(*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0" (parenthesized_expression "(*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8)" ( (binary_expression "*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8" (pointer_expression "*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1)" * (cast_expression "(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1)" ( (binary_expression "(long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1" (binary_expression "(long)*ppuVar15 + (ulong)*pbVar8 * 2" (cast_expression "(long)*ppuVar15" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "*ppuVar15" * identifier)) + (binary_expression "(ulong)*pbVar8 * 2" (binary_expression "(ulong)*pbVar8" (parenthesized_expression "(ulong)" ( identifier )) * identifier) * number_literal)) + number_literal) )))) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00105aa4;" goto statement_identifier ;)) (expression_statement "iVar23 = (char)*pbVar8 + -0x30;" (assignment_expression "iVar23 = (char)*pbVar8 + -0x30" identifier = (binary_expression "(char)*pbVar8 + -0x30" (cast_expression "(char)*pbVar8" ( (type_descriptor "char" primitive_type) ) (pointer_expression "*pbVar8" * identifier)) + number_literal)) ;) (if_statement "if (iVar23 < 2) {\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }" if (parenthesized_expression "(iVar23 < 2)" ( (binary_expression "iVar23 < 2" identifier < number_literal) )) (compound_statement "{\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }" { (if_statement "if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }" if (parenthesized_expression "(iVar23 == 1)" ( (binary_expression "iVar23 == 1" identifier == number_literal) )) (compound_statement "{\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }" { (if_statement "if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }" if (parenthesized_expression "(DAT_00126200 == 2)" ( (binary_expression "DAT_00126200 == 2" identifier == number_literal) )) (compound_statement "{\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }" { (expression_statement "uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);" (assignment_expression "uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5)" identifier = (call_expression "dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5)" identifier (argument_list "(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5)" ( number_literal , (string_literal ""You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "error(0,0,uVar12);" (call_expression "error(0,0,uVar12)" identifier (argument_list "(0,0,uVar12)" ( number_literal , number_literal , identifier ))) ;) (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_0010514b;" goto statement_identifier ;) })) (if_statement "if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }" if (parenthesized_expression "((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0))" ( (binary_expression "(iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)" (parenthesized_expression "(iVar3 != 1)" ( (binary_expression "iVar3 != 1" identifier != number_literal) )) && (parenthesized_expression "(local_cd4 = 1, local_cb0 != 0 || local_cec != 0)" ( (comma_expression "local_cd4 = 1, local_cb0 != 0 || local_cec != 0" (assignment_expression "local_cd4 = 1" identifier = number_literal) , (binary_expression "local_cb0 != 0 || local_cec != 0" (binary_expression "local_cb0 != 0" identifier != number_literal) || (binary_expression "local_cec != 0" identifier != number_literal))) ))) )) (compound_statement "{\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }" { (expression_statement "uVar12 = FUN_0010ca58(0,8,local_b98);" (assignment_expression "uVar12 = FUN_0010ca58(0,8,local_b98)" identifier = (call_expression "FUN_0010ca58(0,8,local_b98)" identifier (argument_list "(0,8,local_b98)" ( number_literal , number_literal , identifier )))) ;) (expression_statement "uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);" (assignment_expression "uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5)" identifier = (call_expression "dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5)" identifier (argument_list "(0,"%s is an slocate database.  Turning on the \'-e\' option.",5)" ( number_literal , (string_literal ""%s is an slocate database.  Turning on the \'-e\' option."" " string_content escape_sequence string_content escape_sequence string_content ") , number_literal )))) ;) (expression_statement "error(0,0,uVar16,uVar12);" (call_expression "error(0,0,uVar16,uVar12)" identifier (argument_list "(0,0,uVar16,uVar12)" ( number_literal , number_literal , identifier , identifier ))) ;) (expression_statement "local_cd4 = 1;" (assignment_expression "local_cd4 = 1" identifier = number_literal) ;) })) })) (expression_statement "FUN_001039a8(FUN_00103e3d,0);" (call_expression "FUN_001039a8(FUN_00103e3d,0)" identifier (argument_list "(FUN_00103e3d,0)" ( identifier , number_literal ))) ;) (expression_statement "local_ca8 = local_cc8;" (assignment_expression "local_ca8 = local_cc8" identifier = identifier) ;) (expression_statement "local_ca0 = "slocate";" (assignment_expression "local_ca0 = "slocate"" identifier = (string_literal ""slocate"" " string_content ")) ;) (expression_statement "local_cac = 1;" (assignment_expression "local_cac = 1" identifier = number_literal) ;) (goto_statement "goto LAB_0010543a;" goto statement_identifier ;) })) (expression_statement "uVar12 = FUN_0010ca58(0,8,local_b98);" (assignment_expression "uVar12 = FUN_0010ca58(0,8,local_b98)" identifier = (call_expression "FUN_0010ca58(0,8,local_b98)" identifier (argument_list "(0,8,local_b98)" ( number_literal , number_literal , identifier )))) ;) (expression_statement "uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);" (assignment_expression "uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5)" identifier = (call_expression "dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5)" identifier (argument_list "(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5)" ( number_literal , (string_literal ""locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"" " string_content ") , number_literal )))) ;) (expression_statement "error(0,0,uVar16,uVar12,0);" (call_expression "error(0,0,uVar16,uVar12,0)" identifier (argument_list "(0,0,uVar16,uVar12,0)" ( number_literal , number_literal , identifier , identifier , number_literal ))) ;) (expression_statement "uVar12 = FUN_0010ca58(0,8,local_b98);" (assignment_expression "uVar12 = FUN_0010ca58(0,8,local_b98)" identifier = (call_expression "FUN_0010ca58(0,8,local_b98)" identifier (argument_list "(0,8,local_b98)" ( number_literal , number_literal , identifier )))) ;) (expression_statement "uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);" (assignment_expression "uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5)" identifier = (call_expression "dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5)" identifier (argument_list "(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5)" ( number_literal , (string_literal ""%s is an slocate database of unsupported security level %d; skipping it."" " string_content ") , number_literal )))) ;) (expression_statement "error(0,0,uVar16,uVar12,iVar23);" (call_expression "error(0,0,uVar16,uVar12,iVar23)" identifier (argument_list "(0,0,uVar16,uVar12,iVar23)" ( number_literal , number_literal , identifier , identifier , identifier ))) ;) (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;) }))) (labeled_statement "LAB_0010514b:\n    iVar3 = fclose(local_ce0);" statement_identifier : (expression_statement "iVar3 = fclose(local_ce0);" (assignment_expression "iVar3 = fclose(local_ce0)" identifier = (call_expression "fclose(local_ce0)" identifier (argument_list "(local_ce0)" ( identifier )))) ;)) (if_statement "if (iVar3 == -1) {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      goto LAB_0010468d;\n    }" if (parenthesized_expression "(iVar3 == -1)" ( (binary_expression "iVar3 == -1" identifier == number_literal) )) (compound_statement "{\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      goto LAB_0010468d;\n    }" { (expression_statement "uVar12 = FUN_0010ca58(0,8,local_cf8);" (assignment_expression "uVar12 = FUN_0010ca58(0,8,local_cf8)" identifier = (call_expression "FUN_0010ca58(0,8,local_cf8)" identifier (argument_list "(0,8,local_cf8)" ( number_literal , number_literal , identifier )))) ;) (expression_statement "piVar13 = __errno_location();" (assignment_expression "piVar13 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,*piVar13,&DAT_001207c7,uVar12);" (call_expression "error(0,*piVar13,&DAT_001207c7,uVar12)" identifier (argument_list "(0,*piVar13,&DAT_001207c7,uVar12)" ( number_literal , (pointer_expression "*piVar13" * identifier) , (pointer_expression "&DAT_001207c7" & identifier) , identifier ))) ;) (goto_statement "goto LAB_0010468d;" goto statement_identifier ;) })) (if_statement "if (local_cd0 != (char *)0x0) {\n      free(local_cd0);\n    }" if (parenthesized_expression "(local_cd0 != (char *)0x0)" ( (binary_expression "local_cd0 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      free(local_cd0);\n    }" { (expression_statement "free(local_cd0);" (call_expression "free(local_cd0)" identifier (argument_list "(local_cd0)" ( identifier ))) ;) })) (if_statement "if ((local_d00 == (char *)0x0) ||\n       (cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0')) break;" if (parenthesized_expression "((local_d00 == (char *)0x0) ||\n       (cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0'))" ( (binary_expression "(local_d00 == (char *)0x0) ||\n       (cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0')" (parenthesized_expression "(local_d00 == (char *)0x0)" ( (binary_expression "local_d00 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0')" ( (comma_expression "cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0'" (assignment_expression "cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78)" identifier = (call_expression "FUN_001063f9(local_d00,":",0,&local_c80,&local_c78)" identifier (argument_list "(local_d00,":",0,&local_c80,&local_c78)" ( identifier , (string_literal "":"" " string_content ") , number_literal , (pointer_expression "&local_c80" & identifier) , (pointer_expression "&local_c78" & identifier) )))) , (binary_expression "cVar2 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence '))) ))) )) (break_statement "break;" break ;)) })) (if_statement "if (local_c94 != 0) {\n    __printf_chk(1,&DAT_0011ea67,uVar6);\n  }" if (parenthesized_expression "(local_c94 != 0)" ( (binary_expression "local_c94 != 0" identifier != number_literal) )) (compound_statement "{\n    __printf_chk(1,&DAT_0011ea67,uVar6);\n  }" { (expression_statement "__printf_chk(1,&DAT_0011ea67,uVar6);" (call_expression "__printf_chk(1,&DAT_0011ea67,uVar6)" identifier (argument_list "(1,&DAT_0011ea67,uVar6)" ( number_literal , (pointer_expression "&DAT_0011ea67" & identifier) , identifier ))) ;) })) (if_statement "if ((uVar6 == 0) && ((local_cd8 == 0 || (DAT_00126270 != 0)))) {\n    local_cc8 = (uint)(local_cec == 0);\n  }" if (parenthesized_expression "((uVar6 == 0) && ((local_cd8 == 0 || (DAT_00126270 != 0))))" ( (binary_expression "(uVar6 == 0) && ((local_cd8 == 0 || (DAT_00126270 != 0)))" (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) && (parenthesized_expression "((local_cd8 == 0 || (DAT_00126270 != 0)))" ( (parenthesized_expression "(local_cd8 == 0 || (DAT_00126270 != 0))" ( (binary_expression "local_cd8 == 0 || (DAT_00126270 != 0)" (binary_expression "local_cd8 == 0" identifier == number_literal) || (parenthesized_expression "(DAT_00126270 != 0)" ( (binary_expression "DAT_00126270 != 0" identifier != number_literal) ))) )) ))) )) (compound_statement "{\n    local_cc8 = (uint)(local_cec == 0);\n  }" { (expression_statement "local_cc8 = (uint)(local_cec == 0);" (assignment_expression "local_cc8 = (uint)(local_cec == 0)" identifier = (call_expression "(uint)(local_cec == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_cec == 0)" ( (binary_expression "local_cec == 0" identifier == number_literal) )))) ;) })) (labeled_statement "LAB_0010468d:\n  if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n    __stack_chk_fail();\n  }" statement_identifier : (if_statement "if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n    __stack_chk_fail();\n  }" if (parenthesized_expression "(local_40 != *(long *)(in_FS_OFFSET + 0x28))" ( (binary_expression "local_40 != *(long *)(in_FS_OFFSET + 0x28)" identifier != (pointer_expression "*(long *)(in_FS_OFFSET + 0x28)" * (cast_expression "(long *)(in_FS_OFFSET + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_FS_OFFSET + 0x28)" ( (binary_expression "in_FS_OFFSET + 0x28" identifier + number_literal) ))))) )) (compound_statement "{\n                    \n    __stack_chk_fail();\n  }" { (expression_statement "__stack_chk_fail();" (call_expression "__stack_chk_fail()" identifier (argument_list "()" ( ))) ;) }))) (return_statement "return (ulong)local_cc8;" return (cast_expression "(ulong)local_cc8" ( (type_descriptor "ulong" type_identifier) ) identifier) ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration (sized_type_specifier long) (pointer_declarator * IDENT)) , (parameter_declaration TYPE 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 (sized_type_specifier long) IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT , IDENT , LIT ))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) }))) (expression_statement (call_expression IDENT (argument_list ( LIT , (string_literal " ") ))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , (string_literal " string_content ") ))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) , (binary_expression IDENT == LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (string_literal " string_content ") )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , (pointer_expression * IDENT) , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }))) (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , (string_literal " string_content ") , (pointer_expression & IDENT) , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT - LIT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT - LIT) ))) * LIT)) ))))) )))) )) (argument_list ( )))) ;) (return_statement return IDENT ;) })) (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) && (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) && (binary_expression IDENT == LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , LIT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (binary_expression IDENT == IDENT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })))) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , (string_literal " string_content ") , LIT , (pointer_expression & IDENT) , (pointer_expression & IDENT) ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (while_statement while (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression (binary_expression IDENT == LIT) || (parenthesized_expression ( (binary_expression IDENT < IDENT) )))) )) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ IDENT ]) == (char_literal ' character ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , LIT , IDENT ))) ;) (goto_statement goto statement_identifier ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ IDENT ]) != (char_literal ' character ')) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (binary_expression IDENT + IDENT) , IDENT )))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) })) }))) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , (pointer_expression * IDENT) , (pointer_expression & IDENT) , IDENT ))) ;) (goto_statement goto statement_identifier ;) })) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , IDENT , (pointer_expression & IDENT) )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression IDENT = (field_expression (field_expression IDENT . field_identifier) . field_identifier)) ;) (expression_statement (assignment_expression IDENT = (field_expression (field_expression IDENT . field_identifier) . field_identifier)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT)) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , (pointer_expression * IDENT) , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (call_expression IDENT (argument_list ( IDENT , IDENT ))) , (field_expression (field_expression IDENT . field_identifier) . field_identifier) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT * LIT) )))) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (pointer_expression & IDENT) , LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (pointer_expression & IDENT) , LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT / IDENT) , LIT , LIT , IDENT , IDENT , IDENT , IDENT , IDENT ))) ;) })) }))) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , (pointer_expression * IDENT) , (pointer_expression & IDENT) , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , LIT , IDENT )))) ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , (pointer_expression * IDENT) , (pointer_expression & IDENT) , IDENT ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < LIT) )) || (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) ))) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT , LIT ))) ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (binary_expression IDENT + IDENT) , LIT , (binary_expression LIT - IDENT) , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) < LIT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT )))) , (binary_expression IDENT != LIT)) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT , LIT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression LIT < IDENT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( (binary_expression IDENT + IDENT) , LIT , (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (parenthesized_expression ( (binary_expression LIT - IDENT) ))) , IDENT )))) , (binary_expression (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT)) == LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , LIT , IDENT , IDENT ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT ))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT ))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;))) }))) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (string_literal " string_content escape_sequence ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) }))) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT ))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (binary_expression (unary_expression ~ IDENT) - LIT) , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT , LIT , (pointer_expression & IDENT) , IDENT ))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;)) }))) }))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (binary_expression (binary_expression (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) + (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT - LIT) )))) + LIT)) )) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT ))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT ))) ;) }))) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT ))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT ))) ;) }))) })))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT ))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT ))) ;) }))) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) ))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) ))) ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) }))) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT , IDENT , IDENT ))) ;) })) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (call_expression IDENT (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) && (parenthesized_expression ( (binary_expression IDENT != LIT) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (subscript_expression IDENT [ LIT ]) , IDENT ))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) })) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT )))) ;) }) while (parenthesized_expression ( (binary_expression IDENT != LIT) )) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT , (pointer_expression & IDENT) , IDENT ))) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT , (pointer_expression & IDENT) , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT ))) ;) }))))) })) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) || (binary_expression IDENT != LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) , (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , (string_literal " string_content ") , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , (string_literal " string_content ") , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , (string_literal " string_content escape_sequence ") , IDENT , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , LIT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) }))) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence string_content escape_sequence escape_sequence escape_sequence string_content escape_sequence escape_sequence string_content escape_sequence escape_sequence string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT , IDENT , IDENT , IDENT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT - (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) * IDENT) )) / IDENT) , LIT , IDENT ))) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT ))) ;) }))) })) (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) })) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , (pointer_expression * IDENT) , (pointer_expression & IDENT) , IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (pointer_expression * IDENT)) + (binary_expression (binary_expression (parenthesized_expression ( IDENT )) * IDENT) * LIT)) + LIT) )))) & LIT) )) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * IDENT)) + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = LIT) , (binary_expression (binary_expression IDENT != LIT) || (binary_expression IDENT != LIT))) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence string_content escape_sequence string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , LIT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) })) })) (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , LIT , IDENT , IDENT , LIT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , LIT , IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , (pointer_expression * IDENT) , (pointer_expression & IDENT) , IDENT ))) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (string_literal " string_content ") , LIT , (pointer_expression & IDENT) , (pointer_expression & IDENT) )))) , (binary_expression IDENT == (char_literal ' escape_sequence '))) ))) )) (break_statement break ;)) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT , (pointer_expression & IDENT) , IDENT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) || (parenthesized_expression ( (binary_expression IDENT != LIT) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT == LIT) )))) ;) })) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) }))) (return_statement return (cast_expression ( (type_descriptor TYPE) ) IDENT) ;) })))
(function_definition "ulong FUN_001042fa(uint param_1,long *param_2,undefined8 param_3)\n\n{\n  char *pcVar1;\n  char cVar2;\n  int iVar3;\n  uint uVar4;\n  int iVar5;\n  ulong uVar6;\n  time_t tVar7;\n  byte *pbVar8;\n  undefined8 *puVar9;\n  long lVar10;\n  char *pcVar11;\n  undefined8 uVar12;\n  int *piVar13;\n  size_t sVar14;\n  ushort **ppuVar15;\n  tm *__tp;\n  undefined8 uVar16;\n  undefined8 uVar17;\n  undefined8 uVar18;\n  undefined8 uVar19;\n  size_t sVar20;\n  byte *pbVar21;\n  undefined *puVar22;\n  int iVar23;\n  undefined4 *unaff_RBP;\n  ulong uVar24;\n  code *pcVar25;\n  int unaff_R12D;\n  long *plVar26;\n  int unaff_R15D;\n  long in_FS_OFFSET;\n  byte bVar27;\n  double dVar28;\n  int local_d04;\n  char *local_d00;\n  char *local_cf8;\n  uint local_cf0;\n  int local_cec;\n  double local_ce8;\n  FILE *local_ce0;\n  uint local_cd8;\n  int local_cd4;\n  char *local_cd0;\n  uint local_cc8;\n  int local_cc4;\n  time_t *local_cc0;\n  ulong local_cb8;\n  int local_cb0;\n  uint local_cac;\n  uint local_ca8;\n  uint local_ca4;\n  char *local_ca0;\n  int local_c98;\n  int local_c94;\n  uint local_c90;\n  char local_c89;\n  long local_c80;\n  size_t local_c78;\n  undefined4 local_c70;\n  undefined4 uStack_c6c;\n  time_t local_c68;\n  long local_c60;\n  stat local_c58;\n  int local_bc8 [4];\n  byte *local_bb8;\n  undefined8 local_bb0;\n  FILE *local_ba0;\n  char *local_b98;\n  int local_b90;\n  byte local_b8c [128];\n  byte local_b0c [132];\n  undefined1 local_a88 [656];\n  undefined1 local_7f8 [656];\n  undefined1 local_568 [656];\n  char local_2d8 [18];\n  char local_2c6;\n  char local_2c5;\n  long local_40;\n  \n  bVar27 = 0;\n  local_ca4 = (uint)param_3;\n  local_40 = *(long *)(in_FS_OFFSET + 0x28);\n  if (*param_2 == 0) {\n    FUN_0010b3a9("locate",param_2,param_3,0);\n  }\n  else {\n    FUN_0010b3a9();\n  }\n  setlocale(6,"");\n  bindtextdomain("findutils","/usr/share/locale");\n  textdomain("findutils");\n  DAT_00126290 = FUN_0010c71d(0);\n  iVar3 = FUN_0011d670(FUN_001064e7);\n  if ((iVar3 == 0) && (local_cc8 = FUN_0011d670(FUN_001038f1), local_cc8 == 0)) {\n    DAT_00126270 = 0;\n    DAT_00126278 = 0;\n    DAT_00126289 = '\x01';\n    local_d00 = getenv("LOCATE_PATH");\n    DAT_00126200 = 0;\n    unaff_RBP = &local_c70;\n    puVar22 = &DAT_0011eb4c;\n    unaff_R12D = 1;\n    local_d04 = 0;\n    local_cf0 = 0;\n    local_cec = 0;\n    local_cb0 = 0;\n    local_c98 = 0;\n    local_c94 = 0;\n    unaff_R15D = 0;\n    local_cd8 = local_cc8;\n    local_cc4 = 0;\n  }\n  else {\n    puVar22 = (undefined *)dcgettext(0,"The atexit library function failed",5);\n    piVar13 = __errno_location();\n    error(1,*piVar13,puVar22);\n    local_c98 = unaff_R12D;\n  }\n  while( true ) {\n    local_c70 = 0xffffffff;\n    iVar3 = getopt_long(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP);\n    if (iVar3 == -1) break;\n    if (iVar3 - 0x30U < 0x52) {\n                    \n                    \n      uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))();\n      return uVar6;\n    }\n    FUN_00103906(1);\n    local_cc4 = unaff_R12D;\n  }\n  if ((-1 < (int)local_ca4) && (local_d00 != (char *)0x0)) {\n    close(local_ca4);\n    local_ca4 = 0xffffffff;\n  }\n  if (local_c94 == 0 && local_cec == 0) {\n    if (optind == param_1) {\n      uVar12 = dcgettext(0,"pattern argument expected",5);\n      sVar14 = 0;\n      error(0,0,uVar12);\n      FUN_00103906(1);\n      goto LAB_00104874;\n    }\n    local_cb0 = 1;\n  }\n  else if ((local_cec != 0) && (optind == param_1)) {\n    local_cd8 = local_cc8;\n  }\n  iVar3 = isatty(1);\n  DAT_0012628a = iVar3 == 1;\n  if (local_d00 != (char *)0x0) {\n    FUN_001063f9(local_d00,":",1,&local_c80,&local_c78);\n  }\n  uVar4 = local_cf0 | 0x400000;\n  if (unaff_R15D == 0) {\n    uVar4 = local_cf0;\n  }\n  local_c89 = '\0';\n  uVar6 = 0;\n  local_c90 = 0xffffffff;\n  local_cf0 = uVar4;\n  while ((uVar4 = local_ca4, local_cd8 == 0 || (DAT_00126278 < DAT_00126270))) {\n    DAT_00126268 = 0;\n    DAT_00126260 = 0;\n    DAT_00126258 = 0;\n    DAT_00126250 = 0;\n    DAT_00126248 = 0;\n    _DAT_00126240 = 0;\n    if (local_d00 == (char *)0x0) {\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = DAT_00126280;\n      local_cd0 = local_d00;\n      local_ca4 = local_c90;\n    }\n    else {\n      sVar14 = local_c78;\n      if (local_c78 == 1) {\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar4 = FUN_001038af(local_cf8);\n      if ((int)uVar4 < 0) {\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n    }\nLAB_00105254:\n    iVar3 = __fxstat(1,uVar4,&local_c58);\n    if (iVar3 == 0) {\n      local_cb8 = local_c58.st_size;\n      local_c68 = local_c58.st_mtim.tv_sec;\n      local_c60 = local_c58.st_mtim.tv_nsec;\n      tVar7 = time((time_t *)&local_c70);\n      if (tVar7 == -1) {\n        uVar12 = dcgettext(0,"time system call failed",5);\n        piVar13 = __errno_location();\n        error(0,*piVar13,uVar12);\n      }\n      else {\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &local_c68;\n    }\n    else {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (time_t *)0x0;\n    }\n    iVar3 = DAT_00126200;\n    uVar4 = optind;\n    uVar6 = (ulong)optind;\n    iVar5 = param_1 - optind;\n    local_cd4 = DAT_00126200;\n    local_b90 = 0;\n    local_bc8[1] = 0;\n    local_bc8[2] = 0;\n    local_b98 = local_cf8;\n    local_ba0 = local_ce0;\n    DAT_00126220 = 0;\n    DAT_00126218 = 0;\n    DAT_00126210 = 0;\n    DAT_00126288 = '\0';\n    local_bb0 = 0x80;\n    local_bb8 = (byte *)FUN_0010d559(0x80);\n    sVar14 = fread(local_bb8,1,2,local_ba0);\n    pbVar8 = local_bb8;\n    uVar24 = (ulong)(int)sVar14;\n    if (2 < uVar24) {\n                    \n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }\n    if ((uVar24 < 2) || (local_bb8[1] != 0)) {\nLAB_00105aa4:\n      FUN_001040e7(local_bc8,10,0);\n      sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0);\n      iVar3 = (int)sVar14 + (int)sVar20;\n      if (((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)) {\n        FUN_001040e7(local_bc8,0x100,0);\n        if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        uVar6 = FUN_0010ca58(0,8,local_cf8);\n        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar12,uVar6);\nLAB_00104daa:\n        uVar4 = (uint)uVar6;\n        FUN_001039a8(FUN_00103e25,0);\n      }\n      else {\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar5) {\n        plVar26 = param_2 + (int)uVar4;\n        do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);\n      }\n      lVar10 = DAT_00126218;\n      if (local_cd4 == 1) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }\n      }\n      else if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }\n      if (local_cec != 0) {\n        FUN_001039a8(FUN_00103a70,&DAT_00126240);\n      }\n      if (local_cb0 != 0) {\n        if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }\n      }\n      if (local_cd8 == 0) {\n        FUN_001039a8(FUN_001038a4,&DAT_00126270);\n      }\n      else {\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }\n      pcVar1 = local_b98;\n      if (iVar5 < 2) {\n        DAT_00126208 = FUN_00103755;\n      }\n      else {\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }\n      if (local_cec != 0) {\n        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar12,pcVar1,local_ca0);\n      }\n      local_bc8[0] = getc(local_ba0);\n      if ((local_bc8[0] != -1) && (local_cac != 0)) {\n        ungetc(local_bc8[0],local_ba0);\n        local_bc8[0] = 0;\n      }\n      do {\n        if (local_bc8[0] == -1) break;\n        iVar3 = (*DAT_00126208)(local_bc8);\n      } while (iVar3 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }\n        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar3 = ferror(local_ba0);\n      uVar6 = DAT_00126278;\n      if (iVar3 != 0) {\n        uVar12 = FUN_0010ca58(0,8,local_b98);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        uVar6 = 0;\n      }\n    }\n    else {\n      ppuVar15 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar23 = (char)*pbVar8 + -0x30;\n      if (iVar23 < 2) {\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar16,uVar12,0);\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar16,uVar12,iVar23);\n      uVar6 = 0;\n    }\nLAB_0010514b:\n    iVar3 = fclose(local_ce0);\n    if (iVar3 == -1) {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      goto LAB_0010468d;\n    }\n    if (local_cd0 != (char *)0x0) {\n      free(local_cd0);\n    }\n    if ((local_d00 == (char *)0x0) ||\n       (cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0')) break;\n  }\n  if (local_c94 != 0) {\n    __printf_chk(1,&DAT_0011ea67,uVar6);\n  }\n  if ((uVar6 == 0) && ((local_cd8 == 0 || (DAT_00126270 != 0)))) {\n    local_cc8 = (uint)(local_cec == 0);\n  }\nLAB_0010468d:\n  if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n    __stack_chk_fail();\n  }\n  return (ulong)local_cc8;\n}" (type_identifier "ulong") (function_declarator "FUN_001042fa(uint param_1,long *param_2,undefined8 param_3)" (identifier "FUN_001042fa") (parameter_list "(uint param_1,long *param_2,undefined8 param_3)" (( "(") (parameter_declaration "uint param_1" (type_identifier "uint") (identifier "param_1")) (, ",") (parameter_declaration "long *param_2" (sized_type_specifier "long" (long "long")) (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) (, ",") (parameter_declaration "undefined8 param_3" (type_identifier "undefined8") (identifier "param_3")) () ")"))) (compound_statement "{\n  char *pcVar1;\n  char cVar2;\n  int iVar3;\n  uint uVar4;\n  int iVar5;\n  ulong uVar6;\n  time_t tVar7;\n  byte *pbVar8;\n  undefined8 *puVar9;\n  long lVar10;\n  char *pcVar11;\n  undefined8 uVar12;\n  int *piVar13;\n  size_t sVar14;\n  ushort **ppuVar15;\n  tm *__tp;\n  undefined8 uVar16;\n  undefined8 uVar17;\n  undefined8 uVar18;\n  undefined8 uVar19;\n  size_t sVar20;\n  byte *pbVar21;\n  undefined *puVar22;\n  int iVar23;\n  undefined4 *unaff_RBP;\n  ulong uVar24;\n  code *pcVar25;\n  int unaff_R12D;\n  long *plVar26;\n  int unaff_R15D;\n  long in_FS_OFFSET;\n  byte bVar27;\n  double dVar28;\n  int local_d04;\n  char *local_d00;\n  char *local_cf8;\n  uint local_cf0;\n  int local_cec;\n  double local_ce8;\n  FILE *local_ce0;\n  uint local_cd8;\n  int local_cd4;\n  char *local_cd0;\n  uint local_cc8;\n  int local_cc4;\n  time_t *local_cc0;\n  ulong local_cb8;\n  int local_cb0;\n  uint local_cac;\n  uint local_ca8;\n  uint local_ca4;\n  char *local_ca0;\n  int local_c98;\n  int local_c94;\n  uint local_c90;\n  char local_c89;\n  long local_c80;\n  size_t local_c78;\n  undefined4 local_c70;\n  undefined4 uStack_c6c;\n  time_t local_c68;\n  long local_c60;\n  stat local_c58;\n  int local_bc8 [4];\n  byte *local_bb8;\n  undefined8 local_bb0;\n  FILE *local_ba0;\n  char *local_b98;\n  int local_b90;\n  byte local_b8c [128];\n  byte local_b0c [132];\n  undefined1 local_a88 [656];\n  undefined1 local_7f8 [656];\n  undefined1 local_568 [656];\n  char local_2d8 [18];\n  char local_2c6;\n  char local_2c5;\n  long local_40;\n  \n  bVar27 = 0;\n  local_ca4 = (uint)param_3;\n  local_40 = *(long *)(in_FS_OFFSET + 0x28);\n  if (*param_2 == 0) {\n    FUN_0010b3a9("locate",param_2,param_3,0);\n  }\n  else {\n    FUN_0010b3a9();\n  }\n  setlocale(6,"");\n  bindtextdomain("findutils","/usr/share/locale");\n  textdomain("findutils");\n  DAT_00126290 = FUN_0010c71d(0);\n  iVar3 = FUN_0011d670(FUN_001064e7);\n  if ((iVar3 == 0) && (local_cc8 = FUN_0011d670(FUN_001038f1), local_cc8 == 0)) {\n    DAT_00126270 = 0;\n    DAT_00126278 = 0;\n    DAT_00126289 = '\x01';\n    local_d00 = getenv("LOCATE_PATH");\n    DAT_00126200 = 0;\n    unaff_RBP = &local_c70;\n    puVar22 = &DAT_0011eb4c;\n    unaff_R12D = 1;\n    local_d04 = 0;\n    local_cf0 = 0;\n    local_cec = 0;\n    local_cb0 = 0;\n    local_c98 = 0;\n    local_c94 = 0;\n    unaff_R15D = 0;\n    local_cd8 = local_cc8;\n    local_cc4 = 0;\n  }\n  else {\n    puVar22 = (undefined *)dcgettext(0,"The atexit library function failed",5);\n    piVar13 = __errno_location();\n    error(1,*piVar13,puVar22);\n    local_c98 = unaff_R12D;\n  }\n  while( true ) {\n    local_c70 = 0xffffffff;\n    iVar3 = getopt_long(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP);\n    if (iVar3 == -1) break;\n    if (iVar3 - 0x30U < 0x52) {\n                    \n                    \n      uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))();\n      return uVar6;\n    }\n    FUN_00103906(1);\n    local_cc4 = unaff_R12D;\n  }\n  if ((-1 < (int)local_ca4) && (local_d00 != (char *)0x0)) {\n    close(local_ca4);\n    local_ca4 = 0xffffffff;\n  }\n  if (local_c94 == 0 && local_cec == 0) {\n    if (optind == param_1) {\n      uVar12 = dcgettext(0,"pattern argument expected",5);\n      sVar14 = 0;\n      error(0,0,uVar12);\n      FUN_00103906(1);\n      goto LAB_00104874;\n    }\n    local_cb0 = 1;\n  }\n  else if ((local_cec != 0) && (optind == param_1)) {\n    local_cd8 = local_cc8;\n  }\n  iVar3 = isatty(1);\n  DAT_0012628a = iVar3 == 1;\n  if (local_d00 != (char *)0x0) {\n    FUN_001063f9(local_d00,":",1,&local_c80,&local_c78);\n  }\n  uVar4 = local_cf0 | 0x400000;\n  if (unaff_R15D == 0) {\n    uVar4 = local_cf0;\n  }\n  local_c89 = '\0';\n  uVar6 = 0;\n  local_c90 = 0xffffffff;\n  local_cf0 = uVar4;\n  while ((uVar4 = local_ca4, local_cd8 == 0 || (DAT_00126278 < DAT_00126270))) {\n    DAT_00126268 = 0;\n    DAT_00126260 = 0;\n    DAT_00126258 = 0;\n    DAT_00126250 = 0;\n    DAT_00126248 = 0;\n    _DAT_00126240 = 0;\n    if (local_d00 == (char *)0x0) {\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = DAT_00126280;\n      local_cd0 = local_d00;\n      local_ca4 = local_c90;\n    }\n    else {\n      sVar14 = local_c78;\n      if (local_c78 == 1) {\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar4 = FUN_001038af(local_cf8);\n      if ((int)uVar4 < 0) {\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n    }\nLAB_00105254:\n    iVar3 = __fxstat(1,uVar4,&local_c58);\n    if (iVar3 == 0) {\n      local_cb8 = local_c58.st_size;\n      local_c68 = local_c58.st_mtim.tv_sec;\n      local_c60 = local_c58.st_mtim.tv_nsec;\n      tVar7 = time((time_t *)&local_c70);\n      if (tVar7 == -1) {\n        uVar12 = dcgettext(0,"time system call failed",5);\n        piVar13 = __errno_location();\n        error(0,*piVar13,uVar12);\n      }\n      else {\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &local_c68;\n    }\n    else {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (time_t *)0x0;\n    }\n    iVar3 = DAT_00126200;\n    uVar4 = optind;\n    uVar6 = (ulong)optind;\n    iVar5 = param_1 - optind;\n    local_cd4 = DAT_00126200;\n    local_b90 = 0;\n    local_bc8[1] = 0;\n    local_bc8[2] = 0;\n    local_b98 = local_cf8;\n    local_ba0 = local_ce0;\n    DAT_00126220 = 0;\n    DAT_00126218 = 0;\n    DAT_00126210 = 0;\n    DAT_00126288 = '\0';\n    local_bb0 = 0x80;\n    local_bb8 = (byte *)FUN_0010d559(0x80);\n    sVar14 = fread(local_bb8,1,2,local_ba0);\n    pbVar8 = local_bb8;\n    uVar24 = (ulong)(int)sVar14;\n    if (2 < uVar24) {\n                    \n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }\n    if ((uVar24 < 2) || (local_bb8[1] != 0)) {\nLAB_00105aa4:\n      FUN_001040e7(local_bc8,10,0);\n      sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0);\n      iVar3 = (int)sVar14 + (int)sVar20;\n      if (((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)) {\n        FUN_001040e7(local_bc8,0x100,0);\n        if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        uVar6 = FUN_0010ca58(0,8,local_cf8);\n        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar12,uVar6);\nLAB_00104daa:\n        uVar4 = (uint)uVar6;\n        FUN_001039a8(FUN_00103e25,0);\n      }\n      else {\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar5) {\n        plVar26 = param_2 + (int)uVar4;\n        do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);\n      }\n      lVar10 = DAT_00126218;\n      if (local_cd4 == 1) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }\n      }\n      else if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }\n      if (local_cec != 0) {\n        FUN_001039a8(FUN_00103a70,&DAT_00126240);\n      }\n      if (local_cb0 != 0) {\n        if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }\n      }\n      if (local_cd8 == 0) {\n        FUN_001039a8(FUN_001038a4,&DAT_00126270);\n      }\n      else {\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }\n      pcVar1 = local_b98;\n      if (iVar5 < 2) {\n        DAT_00126208 = FUN_00103755;\n      }\n      else {\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }\n      if (local_cec != 0) {\n        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar12,pcVar1,local_ca0);\n      }\n      local_bc8[0] = getc(local_ba0);\n      if ((local_bc8[0] != -1) && (local_cac != 0)) {\n        ungetc(local_bc8[0],local_ba0);\n        local_bc8[0] = 0;\n      }\n      do {\n        if (local_bc8[0] == -1) break;\n        iVar3 = (*DAT_00126208)(local_bc8);\n      } while (iVar3 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }\n        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar3 = ferror(local_ba0);\n      uVar6 = DAT_00126278;\n      if (iVar3 != 0) {\n        uVar12 = FUN_0010ca58(0,8,local_b98);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        uVar6 = 0;\n      }\n    }\n    else {\n      ppuVar15 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar23 = (char)*pbVar8 + -0x30;\n      if (iVar23 < 2) {\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar16,uVar12,0);\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar16,uVar12,iVar23);\n      uVar6 = 0;\n    }\nLAB_0010514b:\n    iVar3 = fclose(local_ce0);\n    if (iVar3 == -1) {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      goto LAB_0010468d;\n    }\n    if (local_cd0 != (char *)0x0) {\n      free(local_cd0);\n    }\n    if ((local_d00 == (char *)0x0) ||\n       (cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0')) break;\n  }\n  if (local_c94 != 0) {\n    __printf_chk(1,&DAT_0011ea67,uVar6);\n  }\n  if ((uVar6 == 0) && ((local_cd8 == 0 || (DAT_00126270 != 0)))) {\n    local_cc8 = (uint)(local_cec == 0);\n  }\nLAB_0010468d:\n  if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n    __stack_chk_fail();\n  }\n  return (ulong)local_cc8;\n}" ({ "{") (declaration "char *pcVar1;" (primitive_type "char") (pointer_declarator "*pcVar1" (* "*") (identifier "pcVar1")) (; ";")) (declaration "char cVar2;" (primitive_type "char") (identifier "cVar2") (; ";")) (declaration "int iVar3;" (primitive_type "int") (identifier "iVar3") (; ";")) (declaration "uint uVar4;" (type_identifier "uint") (identifier "uVar4") (; ";")) (declaration "int iVar5;" (primitive_type "int") (identifier "iVar5") (; ";")) (declaration "ulong uVar6;" (type_identifier "ulong") (identifier "uVar6") (; ";")) (declaration "time_t tVar7;" (type_identifier "time_t") (identifier "tVar7") (; ";")) (declaration "byte *pbVar8;" (type_identifier "byte") (pointer_declarator "*pbVar8" (* "*") (identifier "pbVar8")) (; ";")) (declaration "undefined8 *puVar9;" (type_identifier "undefined8") (pointer_declarator "*puVar9" (* "*") (identifier "puVar9")) (; ";")) (declaration "long lVar10;" (sized_type_specifier "long" (long "long")) (identifier "lVar10") (; ";")) (declaration "char *pcVar11;" (primitive_type "char") (pointer_declarator "*pcVar11" (* "*") (identifier "pcVar11")) (; ";")) (declaration "undefined8 uVar12;" (type_identifier "undefined8") (identifier "uVar12") (; ";")) (declaration "int *piVar13;" (primitive_type "int") (pointer_declarator "*piVar13" (* "*") (identifier "piVar13")) (; ";")) (declaration "size_t sVar14;" (primitive_type "size_t") (identifier "sVar14") (; ";")) (declaration "ushort **ppuVar15;" (type_identifier "ushort") (pointer_declarator "**ppuVar15" (* "*") (pointer_declarator "*ppuVar15" (* "*") (identifier "ppuVar15"))) (; ";")) (declaration "tm *__tp;" (type_identifier "tm") (pointer_declarator "*__tp" (* "*") (identifier "__tp")) (; ";")) (declaration "undefined8 uVar16;" (type_identifier "undefined8") (identifier "uVar16") (; ";")) (declaration "undefined8 uVar17;" (type_identifier "undefined8") (identifier "uVar17") (; ";")) (declaration "undefined8 uVar18;" (type_identifier "undefined8") (identifier "uVar18") (; ";")) (declaration "undefined8 uVar19;" (type_identifier "undefined8") (identifier "uVar19") (; ";")) (declaration "size_t sVar20;" (primitive_type "size_t") (identifier "sVar20") (; ";")) (declaration "byte *pbVar21;" (type_identifier "byte") (pointer_declarator "*pbVar21" (* "*") (identifier "pbVar21")) (; ";")) (declaration "undefined *puVar22;" (type_identifier "undefined") (pointer_declarator "*puVar22" (* "*") (identifier "puVar22")) (; ";")) (declaration "int iVar23;" (primitive_type "int") (identifier "iVar23") (; ";")) (declaration "undefined4 *unaff_RBP;" (type_identifier "undefined4") (pointer_declarator "*unaff_RBP" (* "*") (identifier "unaff_RBP")) (; ";")) (declaration "ulong uVar24;" (type_identifier "ulong") (identifier "uVar24") (; ";")) (declaration "code *pcVar25;" (type_identifier "code") (pointer_declarator "*pcVar25" (* "*") (identifier "pcVar25")) (; ";")) (declaration "int unaff_R12D;" (primitive_type "int") (identifier "unaff_R12D") (; ";")) (declaration "long *plVar26;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*plVar26" (* "*") (identifier "plVar26")) (; ";")) (declaration "int unaff_R15D;" (primitive_type "int") (identifier "unaff_R15D") (; ";")) (declaration "long in_FS_OFFSET;" (sized_type_specifier "long" (long "long")) (identifier "in_FS_OFFSET") (; ";")) (declaration "byte bVar27;" (type_identifier "byte") (identifier "bVar27") (; ";")) (declaration "double dVar28;" (primitive_type "double") (identifier "dVar28") (; ";")) (declaration "int local_d04;" (primitive_type "int") (identifier "local_d04") (; ";")) (declaration "char *local_d00;" (primitive_type "char") (pointer_declarator "*local_d00" (* "*") (identifier "local_d00")) (; ";")) (declaration "char *local_cf8;" (primitive_type "char") (pointer_declarator "*local_cf8" (* "*") (identifier "local_cf8")) (; ";")) (declaration "uint local_cf0;" (type_identifier "uint") (identifier "local_cf0") (; ";")) (declaration "int local_cec;" (primitive_type "int") (identifier "local_cec") (; ";")) (declaration "double local_ce8;" (primitive_type "double") (identifier "local_ce8") (; ";")) (declaration "FILE *local_ce0;" (type_identifier "FILE") (pointer_declarator "*local_ce0" (* "*") (identifier "local_ce0")) (; ";")) (declaration "uint local_cd8;" (type_identifier "uint") (identifier "local_cd8") (; ";")) (declaration "int local_cd4;" (primitive_type "int") (identifier "local_cd4") (; ";")) (declaration "char *local_cd0;" (primitive_type "char") (pointer_declarator "*local_cd0" (* "*") (identifier "local_cd0")) (; ";")) (declaration "uint local_cc8;" (type_identifier "uint") (identifier "local_cc8") (; ";")) (declaration "int local_cc4;" (primitive_type "int") (identifier "local_cc4") (; ";")) (declaration "time_t *local_cc0;" (type_identifier "time_t") (pointer_declarator "*local_cc0" (* "*") (identifier "local_cc0")) (; ";")) (declaration "ulong local_cb8;" (type_identifier "ulong") (identifier "local_cb8") (; ";")) (declaration "int local_cb0;" (primitive_type "int") (identifier "local_cb0") (; ";")) (declaration "uint local_cac;" (type_identifier "uint") (identifier "local_cac") (; ";")) (declaration "uint local_ca8;" (type_identifier "uint") (identifier "local_ca8") (; ";")) (declaration "uint local_ca4;" (type_identifier "uint") (identifier "local_ca4") (; ";")) (declaration "char *local_ca0;" (primitive_type "char") (pointer_declarator "*local_ca0" (* "*") (identifier "local_ca0")) (; ";")) (declaration "int local_c98;" (primitive_type "int") (identifier "local_c98") (; ";")) (declaration "int local_c94;" (primitive_type "int") (identifier "local_c94") (; ";")) (declaration "uint local_c90;" (type_identifier "uint") (identifier "local_c90") (; ";")) (declaration "char local_c89;" (primitive_type "char") (identifier "local_c89") (; ";")) (declaration "long local_c80;" (sized_type_specifier "long" (long "long")) (identifier "local_c80") (; ";")) (declaration "size_t local_c78;" (primitive_type "size_t") (identifier "local_c78") (; ";")) (declaration "undefined4 local_c70;" (type_identifier "undefined4") (identifier "local_c70") (; ";")) (declaration "undefined4 uStack_c6c;" (type_identifier "undefined4") (identifier "uStack_c6c") (; ";")) (declaration "time_t local_c68;" (type_identifier "time_t") (identifier "local_c68") (; ";")) (declaration "long local_c60;" (sized_type_specifier "long" (long "long")) (identifier "local_c60") (; ";")) (declaration "stat local_c58;" (type_identifier "stat") (identifier "local_c58") (; ";")) (declaration "int local_bc8 [4];" (primitive_type "int") (array_declarator "local_bc8 [4]" (identifier "local_bc8") ([ "[") (number_literal "4") (] "]")) (; ";")) (declaration "byte *local_bb8;" (type_identifier "byte") (pointer_declarator "*local_bb8" (* "*") (identifier "local_bb8")) (; ";")) (declaration "undefined8 local_bb0;" (type_identifier "undefined8") (identifier "local_bb0") (; ";")) (declaration "FILE *local_ba0;" (type_identifier "FILE") (pointer_declarator "*local_ba0" (* "*") (identifier "local_ba0")) (; ";")) (declaration "char *local_b98;" (primitive_type "char") (pointer_declarator "*local_b98" (* "*") (identifier "local_b98")) (; ";")) (declaration "int local_b90;" (primitive_type "int") (identifier "local_b90") (; ";")) (declaration "byte local_b8c [128];" (type_identifier "byte") (array_declarator "local_b8c [128]" (identifier "local_b8c") ([ "[") (number_literal "128") (] "]")) (; ";")) (declaration "byte local_b0c [132];" (type_identifier "byte") (array_declarator "local_b0c [132]" (identifier "local_b0c") ([ "[") (number_literal "132") (] "]")) (; ";")) (declaration "undefined1 local_a88 [656];" (type_identifier "undefined1") (array_declarator "local_a88 [656]" (identifier "local_a88") ([ "[") (number_literal "656") (] "]")) (; ";")) (declaration "undefined1 local_7f8 [656];" (type_identifier "undefined1") (array_declarator "local_7f8 [656]" (identifier "local_7f8") ([ "[") (number_literal "656") (] "]")) (; ";")) (declaration "undefined1 local_568 [656];" (type_identifier "undefined1") (array_declarator "local_568 [656]" (identifier "local_568") ([ "[") (number_literal "656") (] "]")) (; ";")) (declaration "char local_2d8 [18];" (primitive_type "char") (array_declarator "local_2d8 [18]" (identifier "local_2d8") ([ "[") (number_literal "18") (] "]")) (; ";")) (declaration "char local_2c6;" (primitive_type "char") (identifier "local_2c6") (; ";")) (declaration "char local_2c5;" (primitive_type "char") (identifier "local_2c5") (; ";")) (declaration "long local_40;" (sized_type_specifier "long" (long "long")) (identifier "local_40") (; ";")) (expression_statement "bVar27 = 0;" (assignment_expression "bVar27 = 0" (identifier "bVar27") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_ca4 = (uint)param_3;" (assignment_expression "local_ca4 = (uint)param_3" (identifier "local_ca4") (= "=") (cast_expression "(uint)param_3" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "param_3"))) (; ";")) (expression_statement "local_40 = *(long *)(in_FS_OFFSET + 0x28);" (assignment_expression "local_40 = *(long *)(in_FS_OFFSET + 0x28)" (identifier "local_40") (= "=") (pointer_expression "*(long *)(in_FS_OFFSET + 0x28)" (* "*") (cast_expression "(long *)(in_FS_OFFSET + 0x28)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(in_FS_OFFSET + 0x28)" (( "(") (binary_expression "in_FS_OFFSET + 0x28" (identifier "in_FS_OFFSET") (+ "+") (number_literal "0x28")) () ")"))))) (; ";")) (if_statement "if (*param_2 == 0) {\n    FUN_0010b3a9("locate",param_2,param_3,0);\n  }\n  else {\n    FUN_0010b3a9();\n  }" (if "if") (parenthesized_expression "(*param_2 == 0)" (( "(") (binary_expression "*param_2 == 0" (pointer_expression "*param_2" (* "*") (identifier "param_2")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    FUN_0010b3a9("locate",param_2,param_3,0);\n  }" ({ "{") (expression_statement "FUN_0010b3a9("locate",param_2,param_3,0);" (call_expression "FUN_0010b3a9("locate",param_2,param_3,0)" (identifier "FUN_0010b3a9") (argument_list "("locate",param_2,param_3,0)" (( "(") (string_literal ""locate"" (" """) (string_content "locate") (" """)) (, ",") (identifier "param_2") (, ",") (identifier "param_3") (, ",") (number_literal "0") () ")"))) (; ";")) (} "}")) (else_clause "else {\n    FUN_0010b3a9();\n  }" (else "else") (compound_statement "{\n    FUN_0010b3a9();\n  }" ({ "{") (expression_statement "FUN_0010b3a9();" (call_expression "FUN_0010b3a9()" (identifier "FUN_0010b3a9") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))) (expression_statement "setlocale(6,"");" (call_expression "setlocale(6,"")" (identifier "setlocale") (argument_list "(6,"")" (( "(") (number_literal "6") (, ",") (string_literal """" (" """) (" """)) () ")"))) (; ";")) (expression_statement "bindtextdomain("findutils","/usr/share/locale");" (call_expression "bindtextdomain("findutils","/usr/share/locale")" (identifier "bindtextdomain") (argument_list "("findutils","/usr/share/locale")" (( "(") (string_literal ""findutils"" (" """) (string_content "findutils") (" """)) (, ",") (string_literal ""/usr/share/locale"" (" """) (string_content "/usr/share/locale") (" """)) () ")"))) (; ";")) (expression_statement "textdomain("findutils");" (call_expression "textdomain("findutils")" (identifier "textdomain") (argument_list "("findutils")" (( "(") (string_literal ""findutils"" (" """) (string_content "findutils") (" """)) () ")"))) (; ";")) (expression_statement "DAT_00126290 = FUN_0010c71d(0);" (assignment_expression "DAT_00126290 = FUN_0010c71d(0)" (identifier "DAT_00126290") (= "=") (call_expression "FUN_0010c71d(0)" (identifier "FUN_0010c71d") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "iVar3 = FUN_0011d670(FUN_001064e7);" (assignment_expression "iVar3 = FUN_0011d670(FUN_001064e7)" (identifier "iVar3") (= "=") (call_expression "FUN_0011d670(FUN_001064e7)" (identifier "FUN_0011d670") (argument_list "(FUN_001064e7)" (( "(") (identifier "FUN_001064e7") () ")")))) (; ";")) (if_statement "if ((iVar3 == 0) && (local_cc8 = FUN_0011d670(FUN_001038f1), local_cc8 == 0)) {\n    DAT_00126270 = 0;\n    DAT_00126278 = 0;\n    DAT_00126289 = '\x01';\n    local_d00 = getenv("LOCATE_PATH");\n    DAT_00126200 = 0;\n    unaff_RBP = &local_c70;\n    puVar22 = &DAT_0011eb4c;\n    unaff_R12D = 1;\n    local_d04 = 0;\n    local_cf0 = 0;\n    local_cec = 0;\n    local_cb0 = 0;\n    local_c98 = 0;\n    local_c94 = 0;\n    unaff_R15D = 0;\n    local_cd8 = local_cc8;\n    local_cc4 = 0;\n  }\n  else {\n    puVar22 = (undefined *)dcgettext(0,"The atexit library function failed",5);\n    piVar13 = __errno_location();\n    error(1,*piVar13,puVar22);\n    local_c98 = unaff_R12D;\n  }" (if "if") (parenthesized_expression "((iVar3 == 0) && (local_cc8 = FUN_0011d670(FUN_001038f1), local_cc8 == 0))" (( "(") (binary_expression "(iVar3 == 0) && (local_cc8 = FUN_0011d670(FUN_001038f1), local_cc8 == 0)" (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(local_cc8 = FUN_0011d670(FUN_001038f1), local_cc8 == 0)" (( "(") (comma_expression "local_cc8 = FUN_0011d670(FUN_001038f1), local_cc8 == 0" (assignment_expression "local_cc8 = FUN_0011d670(FUN_001038f1)" (identifier "local_cc8") (= "=") (call_expression "FUN_0011d670(FUN_001038f1)" (identifier "FUN_0011d670") (argument_list "(FUN_001038f1)" (( "(") (identifier "FUN_001038f1") () ")")))) (, ",") (binary_expression "local_cc8 == 0" (identifier "local_cc8") (== "==") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n    DAT_00126270 = 0;\n    DAT_00126278 = 0;\n    DAT_00126289 = '\x01';\n    local_d00 = getenv("LOCATE_PATH");\n    DAT_00126200 = 0;\n    unaff_RBP = &local_c70;\n    puVar22 = &DAT_0011eb4c;\n    unaff_R12D = 1;\n    local_d04 = 0;\n    local_cf0 = 0;\n    local_cec = 0;\n    local_cb0 = 0;\n    local_c98 = 0;\n    local_c94 = 0;\n    unaff_R15D = 0;\n    local_cd8 = local_cc8;\n    local_cc4 = 0;\n  }" ({ "{") (expression_statement "DAT_00126270 = 0;" (assignment_expression "DAT_00126270 = 0" (identifier "DAT_00126270") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_00126278 = 0;" (assignment_expression "DAT_00126278 = 0" (identifier "DAT_00126278") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_00126289 = '\x01';" (assignment_expression "DAT_00126289 = '\x01'" (identifier "DAT_00126289") (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (expression_statement "local_d00 = getenv("LOCATE_PATH");" (assignment_expression "local_d00 = getenv("LOCATE_PATH")" (identifier "local_d00") (= "=") (call_expression "getenv("LOCATE_PATH")" (identifier "getenv") (argument_list "("LOCATE_PATH")" (( "(") (string_literal ""LOCATE_PATH"" (" """) (string_content "LOCATE_PATH") (" """)) () ")")))) (; ";")) (expression_statement "DAT_00126200 = 0;" (assignment_expression "DAT_00126200 = 0" (identifier "DAT_00126200") (= "=") (number_literal "0")) (; ";")) (expression_statement "unaff_RBP = &local_c70;" (assignment_expression "unaff_RBP = &local_c70" (identifier "unaff_RBP") (= "=") (pointer_expression "&local_c70" (& "&") (identifier "local_c70"))) (; ";")) (expression_statement "puVar22 = &DAT_0011eb4c;" (assignment_expression "puVar22 = &DAT_0011eb4c" (identifier "puVar22") (= "=") (pointer_expression "&DAT_0011eb4c" (& "&") (identifier "DAT_0011eb4c"))) (; ";")) (expression_statement "unaff_R12D = 1;" (assignment_expression "unaff_R12D = 1" (identifier "unaff_R12D") (= "=") (number_literal "1")) (; ";")) (expression_statement "local_d04 = 0;" (assignment_expression "local_d04 = 0" (identifier "local_d04") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_cf0 = 0;" (assignment_expression "local_cf0 = 0" (identifier "local_cf0") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_cec = 0;" (assignment_expression "local_cec = 0" (identifier "local_cec") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_cb0 = 0;" (assignment_expression "local_cb0 = 0" (identifier "local_cb0") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_c98 = 0;" (assignment_expression "local_c98 = 0" (identifier "local_c98") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_c94 = 0;" (assignment_expression "local_c94 = 0" (identifier "local_c94") (= "=") (number_literal "0")) (; ";")) (expression_statement "unaff_R15D = 0;" (assignment_expression "unaff_R15D = 0" (identifier "unaff_R15D") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_cd8 = local_cc8;" (assignment_expression "local_cd8 = local_cc8" (identifier "local_cd8") (= "=") (identifier "local_cc8")) (; ";")) (expression_statement "local_cc4 = 0;" (assignment_expression "local_cc4 = 0" (identifier "local_cc4") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n    puVar22 = (undefined *)dcgettext(0,"The atexit library function failed",5);\n    piVar13 = __errno_location();\n    error(1,*piVar13,puVar22);\n    local_c98 = unaff_R12D;\n  }" (else "else") (compound_statement "{\n    puVar22 = (undefined *)dcgettext(0,"The atexit library function failed",5);\n    piVar13 = __errno_location();\n    error(1,*piVar13,puVar22);\n    local_c98 = unaff_R12D;\n  }" ({ "{") (expression_statement "puVar22 = (undefined *)dcgettext(0,"The atexit library function failed",5);" (assignment_expression "puVar22 = (undefined *)dcgettext(0,"The atexit library function failed",5)" (identifier "puVar22") (= "=") (cast_expression "(undefined *)dcgettext(0,"The atexit library function failed",5)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"The atexit library function failed",5)" (identifier "dcgettext") (argument_list "(0,"The atexit library function failed",5)" (( "(") (number_literal "0") (, ",") (string_literal ""The atexit library function failed"" (" """) (string_content "The atexit library function failed") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "piVar13 = __errno_location();" (assignment_expression "piVar13 = __errno_location()" (identifier "piVar13") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "error(1,*piVar13,puVar22);" (call_expression "error(1,*piVar13,puVar22)" (identifier "error") (argument_list "(1,*piVar13,puVar22)" (( "(") (number_literal "1") (, ",") (pointer_expression "*piVar13" (* "*") (identifier "piVar13")) (, ",") (identifier "puVar22") () ")"))) (; ";")) (expression_statement "local_c98 = unaff_R12D;" (assignment_expression "local_c98 = unaff_R12D" (identifier "local_c98") (= "=") (identifier "unaff_R12D")) (; ";")) (} "}")))) (while_statement "while( true ) {\n    local_c70 = 0xffffffff;\n    iVar3 = getopt_long(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP);\n    if (iVar3 == -1) break;\n    if (iVar3 - 0x30U < 0x52) {\n                    \n                    \n      uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))();\n      return uVar6;\n    }\n    FUN_00103906(1);\n    local_cc4 = unaff_R12D;\n  }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n    local_c70 = 0xffffffff;\n    iVar3 = getopt_long(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP);\n    if (iVar3 == -1) break;\n    if (iVar3 - 0x30U < 0x52) {\n                    \n                    \n      uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))();\n      return uVar6;\n    }\n    FUN_00103906(1);\n    local_cc4 = unaff_R12D;\n  }" ({ "{") (expression_statement "local_c70 = 0xffffffff;" (assignment_expression "local_c70 = 0xffffffff" (identifier "local_c70") (= "=") (number_literal "0xffffffff")) (; ";")) (expression_statement "iVar3 = getopt_long(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP);" (assignment_expression "iVar3 = getopt_long(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP)" (identifier "iVar3") (= "=") (call_expression "getopt_long(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP)" (identifier "getopt_long") (argument_list "(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP)" (( "(") (identifier "param_1") (, ",") (identifier "param_2") (, ",") (string_literal ""Abcd:eEil:prsm0SwHPL"" (" """) (string_content "Abcd:eEil:prsm0SwHPL") (" """)) (, ",") (pointer_expression "&PTR_s_database_00125720" (& "&") (identifier "PTR_s_database_00125720")) (, ",") (identifier "unaff_RBP") () ")")))) (; ";")) (if_statement "if (iVar3 == -1) break;" (if "if") (parenthesized_expression "(iVar3 == -1)" (( "(") (binary_expression "iVar3 == -1" (identifier "iVar3") (== "==") (number_literal "-1")) () ")")) (break_statement "break;" (break "break") (; ";"))) (if_statement "if (iVar3 - 0x30U < 0x52) {\n                    \n                    \n      uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))();\n      return uVar6;\n    }" (if "if") (parenthesized_expression "(iVar3 - 0x30U < 0x52)" (( "(") (binary_expression "iVar3 - 0x30U < 0x52" (binary_expression "iVar3 - 0x30U" (identifier "iVar3") (- "-") (number_literal "0x30U")) (< "<") (number_literal "0x52")) () ")")) (compound_statement "{\n                    \n                    \n      uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))();\n      return uVar6;\n    }" ({ "{") (expression_statement "uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))();" (assignment_expression "uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))()" (identifier "uVar6") (= "=") (call_expression "(*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))()" (parenthesized_expression "(*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))" (( "(") (pointer_expression "*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4))" (* "*") (cast_expression "(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4))" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4))" (( "(") (binary_expression "puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)" (identifier "puVar22") (+ "+") (pointer_expression "*(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)" (* "*") (cast_expression "(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar22 + (ulong)(iVar3 - 0x30U) * 4)" (( "(") (binary_expression "puVar22 + (ulong)(iVar3 - 0x30U) * 4" (identifier "puVar22") (+ "+") (binary_expression "(ulong)(iVar3 - 0x30U) * 4" (call_expression "(ulong)(iVar3 - 0x30U)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(iVar3 - 0x30U)" (( "(") (binary_expression "iVar3 - 0x30U" (identifier "iVar3") (- "-") (number_literal "0x30U")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) () ")")))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (return_statement "return uVar6;" (return "return") (identifier "uVar6") (; ";")) (} "}"))) (expression_statement "FUN_00103906(1);" (call_expression "FUN_00103906(1)" (identifier "FUN_00103906") (argument_list "(1)" (( "(") (number_literal "1") () ")"))) (; ";")) (expression_statement "local_cc4 = unaff_R12D;" (assignment_expression "local_cc4 = unaff_R12D" (identifier "local_cc4") (= "=") (identifier "unaff_R12D")) (; ";")) (} "}"))) (if_statement "if ((-1 < (int)local_ca4) && (local_d00 != (char *)0x0)) {\n    close(local_ca4);\n    local_ca4 = 0xffffffff;\n  }" (if "if") (parenthesized_expression "((-1 < (int)local_ca4) && (local_d00 != (char *)0x0))" (( "(") (binary_expression "(-1 < (int)local_ca4) && (local_d00 != (char *)0x0)" (parenthesized_expression "(-1 < (int)local_ca4)" (( "(") (binary_expression "-1 < (int)local_ca4" (number_literal "-1") (< "<") (cast_expression "(int)local_ca4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_ca4"))) () ")")) (&& "&&") (parenthesized_expression "(local_d00 != (char *)0x0)" (( "(") (binary_expression "local_d00 != (char *)0x0" (identifier "local_d00") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")"))) () ")")) (compound_statement "{\n    close(local_ca4);\n    local_ca4 = 0xffffffff;\n  }" ({ "{") (expression_statement "close(local_ca4);" (call_expression "close(local_ca4)" (identifier "close") (argument_list "(local_ca4)" (( "(") (identifier "local_ca4") () ")"))) (; ";")) (expression_statement "local_ca4 = 0xffffffff;" (assignment_expression "local_ca4 = 0xffffffff" (identifier "local_ca4") (= "=") (number_literal "0xffffffff")) (; ";")) (} "}"))) (if_statement "if (local_c94 == 0 && local_cec == 0) {\n    if (optind == param_1) {\n      uVar12 = dcgettext(0,"pattern argument expected",5);\n      sVar14 = 0;\n      error(0,0,uVar12);\n      FUN_00103906(1);\n      goto LAB_00104874;\n    }\n    local_cb0 = 1;\n  }\n  else if ((local_cec != 0) && (optind == param_1)) {\n    local_cd8 = local_cc8;\n  }" (if "if") (parenthesized_expression "(local_c94 == 0 && local_cec == 0)" (( "(") (binary_expression "local_c94 == 0 && local_cec == 0" (binary_expression "local_c94 == 0" (identifier "local_c94") (== "==") (number_literal "0")) (&& "&&") (binary_expression "local_cec == 0" (identifier "local_cec") (== "==") (number_literal "0"))) () ")")) (compound_statement "{\n    if (optind == param_1) {\n      uVar12 = dcgettext(0,"pattern argument expected",5);\n      sVar14 = 0;\n      error(0,0,uVar12);\n      FUN_00103906(1);\n      goto LAB_00104874;\n    }\n    local_cb0 = 1;\n  }" ({ "{") (if_statement "if (optind == param_1) {\n      uVar12 = dcgettext(0,"pattern argument expected",5);\n      sVar14 = 0;\n      error(0,0,uVar12);\n      FUN_00103906(1);\n      goto LAB_00104874;\n    }" (if "if") (parenthesized_expression "(optind == param_1)" (( "(") (binary_expression "optind == param_1" (identifier "optind") (== "==") (identifier "param_1")) () ")")) (compound_statement "{\n      uVar12 = dcgettext(0,"pattern argument expected",5);\n      sVar14 = 0;\n      error(0,0,uVar12);\n      FUN_00103906(1);\n      goto LAB_00104874;\n    }" ({ "{") (expression_statement "uVar12 = dcgettext(0,"pattern argument expected",5);" (assignment_expression "uVar12 = dcgettext(0,"pattern argument expected",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"pattern argument expected",5)" (identifier "dcgettext") (argument_list "(0,"pattern argument expected",5)" (( "(") (number_literal "0") (, ",") (string_literal ""pattern argument expected"" (" """) (string_content "pattern argument expected") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "sVar14 = 0;" (assignment_expression "sVar14 = 0" (identifier "sVar14") (= "=") (number_literal "0")) (; ";")) (expression_statement "error(0,0,uVar12);" (call_expression "error(0,0,uVar12)" (identifier "error") (argument_list "(0,0,uVar12)" (( "(") (number_literal "0") (, ",") (number_literal "0") (, ",") (identifier "uVar12") () ")"))) (; ";")) (expression_statement "FUN_00103906(1);" (call_expression "FUN_00103906(1)" (identifier "FUN_00103906") (argument_list "(1)" (( "(") (number_literal "1") () ")"))) (; ";")) (goto_statement "goto LAB_00104874;" (goto "goto") (statement_identifier "LAB_00104874") (; ";")) (} "}"))) (expression_statement "local_cb0 = 1;" (assignment_expression "local_cb0 = 1" (identifier "local_cb0") (= "=") (number_literal "1")) (; ";")) (} "}")) (else_clause "else if ((local_cec != 0) && (optind == param_1)) {\n    local_cd8 = local_cc8;\n  }" (else "else") (if_statement "if ((local_cec != 0) && (optind == param_1)) {\n    local_cd8 = local_cc8;\n  }" (if "if") (parenthesized_expression "((local_cec != 0) && (optind == param_1))" (( "(") (binary_expression "(local_cec != 0) && (optind == param_1)" (parenthesized_expression "(local_cec != 0)" (( "(") (binary_expression "local_cec != 0" (identifier "local_cec") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(optind == param_1)" (( "(") (binary_expression "optind == param_1" (identifier "optind") (== "==") (identifier "param_1")) () ")"))) () ")")) (compound_statement "{\n    local_cd8 = local_cc8;\n  }" ({ "{") (expression_statement "local_cd8 = local_cc8;" (assignment_expression "local_cd8 = local_cc8" (identifier "local_cd8") (= "=") (identifier "local_cc8")) (; ";")) (} "}"))))) (expression_statement "iVar3 = isatty(1);" (assignment_expression "iVar3 = isatty(1)" (identifier "iVar3") (= "=") (call_expression "isatty(1)" (identifier "isatty") (argument_list "(1)" (( "(") (number_literal "1") () ")")))) (; ";")) (expression_statement "DAT_0012628a = iVar3 == 1;" (assignment_expression "DAT_0012628a = iVar3 == 1" (identifier "DAT_0012628a") (= "=") (binary_expression "iVar3 == 1" (identifier "iVar3") (== "==") (number_literal "1"))) (; ";")) (if_statement "if (local_d00 != (char *)0x0) {\n    FUN_001063f9(local_d00,":",1,&local_c80,&local_c78);\n  }" (if "if") (parenthesized_expression "(local_d00 != (char *)0x0)" (( "(") (binary_expression "local_d00 != (char *)0x0" (identifier "local_d00") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    FUN_001063f9(local_d00,":",1,&local_c80,&local_c78);\n  }" ({ "{") (expression_statement "FUN_001063f9(local_d00,":",1,&local_c80,&local_c78);" (call_expression "FUN_001063f9(local_d00,":",1,&local_c80,&local_c78)" (identifier "FUN_001063f9") (argument_list "(local_d00,":",1,&local_c80,&local_c78)" (( "(") (identifier "local_d00") (, ",") (string_literal "":"" (" """) (string_content ":") (" """)) (, ",") (number_literal "1") (, ",") (pointer_expression "&local_c80" (& "&") (identifier "local_c80")) (, ",") (pointer_expression "&local_c78" (& "&") (identifier "local_c78")) () ")"))) (; ";")) (} "}"))) (expression_statement "uVar4 = local_cf0 | 0x400000;" (assignment_expression "uVar4 = local_cf0 | 0x400000" (identifier "uVar4") (= "=") (binary_expression "local_cf0 | 0x400000" (identifier "local_cf0") (| "|") (number_literal "0x400000"))) (; ";")) (if_statement "if (unaff_R15D == 0) {\n    uVar4 = local_cf0;\n  }" (if "if") (parenthesized_expression "(unaff_R15D == 0)" (( "(") (binary_expression "unaff_R15D == 0" (identifier "unaff_R15D") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    uVar4 = local_cf0;\n  }" ({ "{") (expression_statement "uVar4 = local_cf0;" (assignment_expression "uVar4 = local_cf0" (identifier "uVar4") (= "=") (identifier "local_cf0")) (; ";")) (} "}"))) (expression_statement "local_c89 = '\0';" (assignment_expression "local_c89 = '\0'" (identifier "local_c89") (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" (identifier "uVar6") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_c90 = 0xffffffff;" (assignment_expression "local_c90 = 0xffffffff" (identifier "local_c90") (= "=") (number_literal "0xffffffff")) (; ";")) (expression_statement "local_cf0 = uVar4;" (assignment_expression "local_cf0 = uVar4" (identifier "local_cf0") (= "=") (identifier "uVar4")) (; ";")) (while_statement "while ((uVar4 = local_ca4, local_cd8 == 0 || (DAT_00126278 < DAT_00126270))) {\n    DAT_00126268 = 0;\n    DAT_00126260 = 0;\n    DAT_00126258 = 0;\n    DAT_00126250 = 0;\n    DAT_00126248 = 0;\n    _DAT_00126240 = 0;\n    if (local_d00 == (char *)0x0) {\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = DAT_00126280;\n      local_cd0 = local_d00;\n      local_ca4 = local_c90;\n    }\n    else {\n      sVar14 = local_c78;\n      if (local_c78 == 1) {\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar4 = FUN_001038af(local_cf8);\n      if ((int)uVar4 < 0) {\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n    }\nLAB_00105254:\n    iVar3 = __fxstat(1,uVar4,&local_c58);\n    if (iVar3 == 0) {\n      local_cb8 = local_c58.st_size;\n      local_c68 = local_c58.st_mtim.tv_sec;\n      local_c60 = local_c58.st_mtim.tv_nsec;\n      tVar7 = time((time_t *)&local_c70);\n      if (tVar7 == -1) {\n        uVar12 = dcgettext(0,"time system call failed",5);\n        piVar13 = __errno_location();\n        error(0,*piVar13,uVar12);\n      }\n      else {\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &local_c68;\n    }\n    else {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (time_t *)0x0;\n    }\n    iVar3 = DAT_00126200;\n    uVar4 = optind;\n    uVar6 = (ulong)optind;\n    iVar5 = param_1 - optind;\n    local_cd4 = DAT_00126200;\n    local_b90 = 0;\n    local_bc8[1] = 0;\n    local_bc8[2] = 0;\n    local_b98 = local_cf8;\n    local_ba0 = local_ce0;\n    DAT_00126220 = 0;\n    DAT_00126218 = 0;\n    DAT_00126210 = 0;\n    DAT_00126288 = '\0';\n    local_bb0 = 0x80;\n    local_bb8 = (byte *)FUN_0010d559(0x80);\n    sVar14 = fread(local_bb8,1,2,local_ba0);\n    pbVar8 = local_bb8;\n    uVar24 = (ulong)(int)sVar14;\n    if (2 < uVar24) {\n                    \n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }\n    if ((uVar24 < 2) || (local_bb8[1] != 0)) {\nLAB_00105aa4:\n      FUN_001040e7(local_bc8,10,0);\n      sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0);\n      iVar3 = (int)sVar14 + (int)sVar20;\n      if (((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)) {\n        FUN_001040e7(local_bc8,0x100,0);\n        if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        uVar6 = FUN_0010ca58(0,8,local_cf8);\n        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar12,uVar6);\nLAB_00104daa:\n        uVar4 = (uint)uVar6;\n        FUN_001039a8(FUN_00103e25,0);\n      }\n      else {\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar5) {\n        plVar26 = param_2 + (int)uVar4;\n        do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);\n      }\n      lVar10 = DAT_00126218;\n      if (local_cd4 == 1) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }\n      }\n      else if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }\n      if (local_cec != 0) {\n        FUN_001039a8(FUN_00103a70,&DAT_00126240);\n      }\n      if (local_cb0 != 0) {\n        if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }\n      }\n      if (local_cd8 == 0) {\n        FUN_001039a8(FUN_001038a4,&DAT_00126270);\n      }\n      else {\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }\n      pcVar1 = local_b98;\n      if (iVar5 < 2) {\n        DAT_00126208 = FUN_00103755;\n      }\n      else {\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }\n      if (local_cec != 0) {\n        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar12,pcVar1,local_ca0);\n      }\n      local_bc8[0] = getc(local_ba0);\n      if ((local_bc8[0] != -1) && (local_cac != 0)) {\n        ungetc(local_bc8[0],local_ba0);\n        local_bc8[0] = 0;\n      }\n      do {\n        if (local_bc8[0] == -1) break;\n        iVar3 = (*DAT_00126208)(local_bc8);\n      } while (iVar3 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }\n        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar3 = ferror(local_ba0);\n      uVar6 = DAT_00126278;\n      if (iVar3 != 0) {\n        uVar12 = FUN_0010ca58(0,8,local_b98);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        uVar6 = 0;\n      }\n    }\n    else {\n      ppuVar15 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar23 = (char)*pbVar8 + -0x30;\n      if (iVar23 < 2) {\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar16,uVar12,0);\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar16,uVar12,iVar23);\n      uVar6 = 0;\n    }\nLAB_0010514b:\n    iVar3 = fclose(local_ce0);\n    if (iVar3 == -1) {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      goto LAB_0010468d;\n    }\n    if (local_cd0 != (char *)0x0) {\n      free(local_cd0);\n    }\n    if ((local_d00 == (char *)0x0) ||\n       (cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0')) break;\n  }" (while "while") (parenthesized_expression "((uVar4 = local_ca4, local_cd8 == 0 || (DAT_00126278 < DAT_00126270)))" (( "(") (parenthesized_expression "(uVar4 = local_ca4, local_cd8 == 0 || (DAT_00126278 < DAT_00126270))" (( "(") (comma_expression "uVar4 = local_ca4, local_cd8 == 0 || (DAT_00126278 < DAT_00126270)" (assignment_expression "uVar4 = local_ca4" (identifier "uVar4") (= "=") (identifier "local_ca4")) (, ",") (binary_expression "local_cd8 == 0 || (DAT_00126278 < DAT_00126270)" (binary_expression "local_cd8 == 0" (identifier "local_cd8") (== "==") (number_literal "0")) (|| "||") (parenthesized_expression "(DAT_00126278 < DAT_00126270)" (( "(") (binary_expression "DAT_00126278 < DAT_00126270" (identifier "DAT_00126278") (< "<") (identifier "DAT_00126270")) () ")")))) () ")")) () ")")) (compound_statement "{\n    DAT_00126268 = 0;\n    DAT_00126260 = 0;\n    DAT_00126258 = 0;\n    DAT_00126250 = 0;\n    DAT_00126248 = 0;\n    _DAT_00126240 = 0;\n    if (local_d00 == (char *)0x0) {\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = DAT_00126280;\n      local_cd0 = local_d00;\n      local_ca4 = local_c90;\n    }\n    else {\n      sVar14 = local_c78;\n      if (local_c78 == 1) {\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar4 = FUN_001038af(local_cf8);\n      if ((int)uVar4 < 0) {\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n    }\nLAB_00105254:\n    iVar3 = __fxstat(1,uVar4,&local_c58);\n    if (iVar3 == 0) {\n      local_cb8 = local_c58.st_size;\n      local_c68 = local_c58.st_mtim.tv_sec;\n      local_c60 = local_c58.st_mtim.tv_nsec;\n      tVar7 = time((time_t *)&local_c70);\n      if (tVar7 == -1) {\n        uVar12 = dcgettext(0,"time system call failed",5);\n        piVar13 = __errno_location();\n        error(0,*piVar13,uVar12);\n      }\n      else {\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &local_c68;\n    }\n    else {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (time_t *)0x0;\n    }\n    iVar3 = DAT_00126200;\n    uVar4 = optind;\n    uVar6 = (ulong)optind;\n    iVar5 = param_1 - optind;\n    local_cd4 = DAT_00126200;\n    local_b90 = 0;\n    local_bc8[1] = 0;\n    local_bc8[2] = 0;\n    local_b98 = local_cf8;\n    local_ba0 = local_ce0;\n    DAT_00126220 = 0;\n    DAT_00126218 = 0;\n    DAT_00126210 = 0;\n    DAT_00126288 = '\0';\n    local_bb0 = 0x80;\n    local_bb8 = (byte *)FUN_0010d559(0x80);\n    sVar14 = fread(local_bb8,1,2,local_ba0);\n    pbVar8 = local_bb8;\n    uVar24 = (ulong)(int)sVar14;\n    if (2 < uVar24) {\n                    \n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }\n    if ((uVar24 < 2) || (local_bb8[1] != 0)) {\nLAB_00105aa4:\n      FUN_001040e7(local_bc8,10,0);\n      sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0);\n      iVar3 = (int)sVar14 + (int)sVar20;\n      if (((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)) {\n        FUN_001040e7(local_bc8,0x100,0);\n        if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        uVar6 = FUN_0010ca58(0,8,local_cf8);\n        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar12,uVar6);\nLAB_00104daa:\n        uVar4 = (uint)uVar6;\n        FUN_001039a8(FUN_00103e25,0);\n      }\n      else {\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar5) {\n        plVar26 = param_2 + (int)uVar4;\n        do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);\n      }\n      lVar10 = DAT_00126218;\n      if (local_cd4 == 1) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }\n      }\n      else if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }\n      if (local_cec != 0) {\n        FUN_001039a8(FUN_00103a70,&DAT_00126240);\n      }\n      if (local_cb0 != 0) {\n        if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }\n      }\n      if (local_cd8 == 0) {\n        FUN_001039a8(FUN_001038a4,&DAT_00126270);\n      }\n      else {\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }\n      pcVar1 = local_b98;\n      if (iVar5 < 2) {\n        DAT_00126208 = FUN_00103755;\n      }\n      else {\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }\n      if (local_cec != 0) {\n        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar12,pcVar1,local_ca0);\n      }\n      local_bc8[0] = getc(local_ba0);\n      if ((local_bc8[0] != -1) && (local_cac != 0)) {\n        ungetc(local_bc8[0],local_ba0);\n        local_bc8[0] = 0;\n      }\n      do {\n        if (local_bc8[0] == -1) break;\n        iVar3 = (*DAT_00126208)(local_bc8);\n      } while (iVar3 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }\n        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar3 = ferror(local_ba0);\n      uVar6 = DAT_00126278;\n      if (iVar3 != 0) {\n        uVar12 = FUN_0010ca58(0,8,local_b98);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        uVar6 = 0;\n      }\n    }\n    else {\n      ppuVar15 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar23 = (char)*pbVar8 + -0x30;\n      if (iVar23 < 2) {\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar16,uVar12,0);\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar16,uVar12,iVar23);\n      uVar6 = 0;\n    }\nLAB_0010514b:\n    iVar3 = fclose(local_ce0);\n    if (iVar3 == -1) {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      goto LAB_0010468d;\n    }\n    if (local_cd0 != (char *)0x0) {\n      free(local_cd0);\n    }\n    if ((local_d00 == (char *)0x0) ||\n       (cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0')) break;\n  }" ({ "{") (expression_statement "DAT_00126268 = 0;" (assignment_expression "DAT_00126268 = 0" (identifier "DAT_00126268") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_00126260 = 0;" (assignment_expression "DAT_00126260 = 0" (identifier "DAT_00126260") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_00126258 = 0;" (assignment_expression "DAT_00126258 = 0" (identifier "DAT_00126258") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_00126250 = 0;" (assignment_expression "DAT_00126250 = 0" (identifier "DAT_00126250") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_00126248 = 0;" (assignment_expression "DAT_00126248 = 0" (identifier "DAT_00126248") (= "=") (number_literal "0")) (; ";")) (expression_statement "_DAT_00126240 = 0;" (assignment_expression "_DAT_00126240 = 0" (identifier "_DAT_00126240") (= "=") (number_literal "0")) (; ";")) (if_statement "if (local_d00 == (char *)0x0) {\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = DAT_00126280;\n      local_cd0 = local_d00;\n      local_ca4 = local_c90;\n    }\n    else {\n      sVar14 = local_c78;\n      if (local_c78 == 1) {\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar4 = FUN_001038af(local_cf8);\n      if ((int)uVar4 < 0) {\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n    }" (if "if") (parenthesized_expression "(local_d00 == (char *)0x0)" (( "(") (binary_expression "local_d00 == (char *)0x0" (identifier "local_d00") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      if (local_ca4 == 0xffffffff) break;\n      local_cf8 = DAT_00126280;\n      local_cd0 = local_d00;\n      local_ca4 = local_c90;\n    }" ({ "{") (if_statement "if (local_ca4 == 0xffffffff) break;" (if "if") (parenthesized_expression "(local_ca4 == 0xffffffff)" (( "(") (binary_expression "local_ca4 == 0xffffffff" (identifier "local_ca4") (== "==") (number_literal "0xffffffff")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "local_cf8 = DAT_00126280;" (assignment_expression "local_cf8 = DAT_00126280" (identifier "local_cf8") (= "=") (identifier "DAT_00126280")) (; ";")) (expression_statement "local_cd0 = local_d00;" (assignment_expression "local_cd0 = local_d00" (identifier "local_cd0") (= "=") (identifier "local_d00")) (; ";")) (expression_statement "local_ca4 = local_c90;" (assignment_expression "local_ca4 = local_c90" (identifier "local_ca4") (= "=") (identifier "local_c90")) (; ";")) (} "}")) (else_clause "else {\n      sVar14 = local_c78;\n      if (local_c78 == 1) {\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar4 = FUN_001038af(local_cf8);\n      if ((int)uVar4 < 0) {\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n    }" (else "else") (compound_statement "{\n      sVar14 = local_c78;\n      if (local_c78 == 1) {\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }\n      uVar4 = FUN_001038af(local_cf8);\n      if ((int)uVar4 < 0) {\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n    }" ({ "{") (expression_statement "sVar14 = local_c78;" (assignment_expression "sVar14 = local_c78" (identifier "sVar14") (= "=") (identifier "local_c78")) (; ";")) (if_statement "if (local_c78 == 1) {\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }\n      else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }" (if "if") (parenthesized_expression "(local_c78 == 1)" (( "(") (binary_expression "local_c78 == 1" (identifier "local_c78") (== "==") (number_literal "1")) () ")")) (compound_statement "{\nLAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }\n        if (local_d00[local_c80] != '.') goto LAB_00104891;\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n      }" ({ "{") (labeled_statement "LAB_00104874:\n        if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }" (statement_identifier "LAB_00104874") (: ":") (if_statement "if (local_d00[local_c80] == '-') {\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }" (if "if") (parenthesized_expression "(local_d00[local_c80] == '-')" (( "(") (binary_expression "local_d00[local_c80] == '-'" (subscript_expression "local_d00[local_c80]" (identifier "local_d00") ([ "[") (identifier "local_c80") (] "]")) (== "==") (char_literal "'-'" (' "'") (character "-") (' "'"))) () ")")) (compound_statement "{\n          if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }\n          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);\n          error(0,0,uVar12);\n          goto LAB_0010468d;\n        }" ({ "{") (if_statement "if (local_c89 == '\0') {\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }" (if "if") (parenthesized_expression "(local_c89 == '\0')" (( "(") (binary_expression "local_c89 == '\0'" (identifier "local_c89") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n            local_c89 = '\x01';\n            local_cf8 = "<stdin>";\n            local_cd0 = (char *)0x0;\n            uVar4 = local_cc8;\n            goto LAB_00105254;\n          }" ({ "{") (expression_statement "local_c89 = '\x01';" (assignment_expression "local_c89 = '\x01'" (identifier "local_c89") (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (expression_statement "local_cf8 = "<stdin>";" (assignment_expression "local_cf8 = "<stdin>"" (identifier "local_cf8") (= "=") (string_literal ""<stdin>"" (" """) (string_content "<stdin>") (" """))) (; ";")) (expression_statement "local_cd0 = (char *)0x0;" (assignment_expression "local_cd0 = (char *)0x0" (identifier "local_cd0") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "uVar4 = local_cc8;" (assignment_expression "uVar4 = local_cc8" (identifier "uVar4") (= "=") (identifier "local_cc8")) (; ";")) (goto_statement "goto LAB_00105254;" (goto "goto") (statement_identifier "LAB_00105254") (; ";")) (} "}"))) (expression_statement "uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);" (assignment_expression "uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"warning: the locate database can only be read from stdin once.",5)" (identifier "dcgettext") (argument_list "(0,"warning: the locate database can only be read from stdin once.",5)" (( "(") (number_literal "0") (, ",") (string_literal ""warning: the locate database can only be read from stdin once."" (" """) (string_content "warning: the locate database can only be read from stdin once.") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "error(0,0,uVar12);" (call_expression "error(0,0,uVar12)" (identifier "error") (argument_list "(0,0,uVar12)" (( "(") (number_literal "0") (, ",") (number_literal "0") (, ",") (identifier "uVar12") () ")"))) (; ";")) (goto_statement "goto LAB_0010468d;" (goto "goto") (statement_identifier "LAB_0010468d") (; ";")) (} "}")))) (if_statement "if (local_d00[local_c80] != '.') goto LAB_00104891;" (if "if") (parenthesized_expression "(local_d00[local_c80] != '.')" (( "(") (binary_expression "local_d00[local_c80] != '.'" (subscript_expression "local_d00[local_c80]" (identifier "local_d00") ([ "[") (identifier "local_c80") (] "]")) (!= "!=") (char_literal "'.'" (' "'") (character ".") (' "'"))) () ")")) (goto_statement "goto LAB_00104891;" (goto "goto") (statement_identifier "LAB_00104891") (; ";"))) (expression_statement "local_cf8 = "/var/cache/locate/locatedb";" (assignment_expression "local_cf8 = "/var/cache/locate/locatedb"" (identifier "local_cf8") (= "=") (string_literal ""/var/cache/locate/locatedb"" (" """) (string_content "/var/cache/locate/locatedb") (" """))) (; ";")) (expression_statement "local_cd0 = (char *)0x0;" (assignment_expression "local_cd0 = (char *)0x0" (identifier "local_cd0") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}")) (else_clause "else {\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }" (else "else") (compound_statement "{\n        local_cf8 = "/var/cache/locate/locatedb";\n        local_cd0 = (char *)0x0;\n        if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }\n      }" ({ "{") (expression_statement "local_cf8 = "/var/cache/locate/locatedb";" (assignment_expression "local_cf8 = "/var/cache/locate/locatedb"" (identifier "local_cf8") (= "=") (string_literal ""/var/cache/locate/locatedb"" (" """) (string_content "/var/cache/locate/locatedb") (" """))) (; ";")) (expression_statement "local_cd0 = (char *)0x0;" (assignment_expression "local_cd0 = (char *)0x0" (identifier "local_cd0") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (if_statement "if (local_c78 != 0) {\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }" (if "if") (parenthesized_expression "(local_c78 != 0)" (( "(") (binary_expression "local_c78 != 0" (identifier "local_c78") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);\n          local_cd0 = local_cf8;\n        }" ({ "{") (labeled_statement "LAB_00104891:\n          local_cf8 = strndup(local_d00 + local_c80,sVar14);" (statement_identifier "LAB_00104891") (: ":") (expression_statement "local_cf8 = strndup(local_d00 + local_c80,sVar14);" (assignment_expression "local_cf8 = strndup(local_d00 + local_c80,sVar14)" (identifier "local_cf8") (= "=") (call_expression "strndup(local_d00 + local_c80,sVar14)" (identifier "strndup") (argument_list "(local_d00 + local_c80,sVar14)" (( "(") (binary_expression "local_d00 + local_c80" (identifier "local_d00") (+ "+") (identifier "local_c80")) (, ",") (identifier "sVar14") () ")")))) (; ";"))) (expression_statement "local_cd0 = local_cf8;" (assignment_expression "local_cd0 = local_cf8" (identifier "local_cd0") (= "=") (identifier "local_cf8")) (; ";")) (} "}"))) (} "}")))) (expression_statement "uVar4 = FUN_001038af(local_cf8);" (assignment_expression "uVar4 = FUN_001038af(local_cf8)" (identifier "uVar4") (= "=") (call_expression "FUN_001038af(local_cf8)" (identifier "FUN_001038af") (argument_list "(local_cf8)" (( "(") (identifier "local_cf8") () ")")))) (; ";")) (if_statement "if ((int)uVar4 < 0) {\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }" (if "if") (parenthesized_expression "((int)uVar4 < 0)" (( "(") (binary_expression "(int)uVar4 < 0" (cast_expression "(int)uVar4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar4")) (< "<") (number_literal "0")) () ")")) (compound_statement "{\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }" ({ "{") (expression_statement "uVar12 = FUN_0010ca58(0,8,local_cf8);" (assignment_expression "uVar12 = FUN_0010ca58(0,8,local_cf8)" (identifier "uVar12") (= "=") (call_expression "FUN_0010ca58(0,8,local_cf8)" (identifier "FUN_0010ca58") (argument_list "(0,8,local_cf8)" (( "(") (number_literal "0") (, ",") (number_literal "8") (, ",") (identifier "local_cf8") () ")")))) (; ";")) (expression_statement "piVar13 = __errno_location();" (assignment_expression "piVar13 = __errno_location()" (identifier "piVar13") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "error(0,*piVar13,&DAT_001207c7,uVar12);" (call_expression "error(0,*piVar13,&DAT_001207c7,uVar12)" (identifier "error") (argument_list "(0,*piVar13,&DAT_001207c7,uVar12)" (( "(") (number_literal "0") (, ",") (pointer_expression "*piVar13" (* "*") (identifier "piVar13")) (, ",") (pointer_expression "&DAT_001207c7" (& "&") (identifier "DAT_001207c7")) (, ",") (identifier "uVar12") () ")"))) (; ";")) (goto_statement "goto LAB_0010468d;" (goto "goto") (statement_identifier "LAB_0010468d") (; ";")) (} "}"))) (} "}")))) (labeled_statement "LAB_00105254:\n    iVar3 = __fxstat(1,uVar4,&local_c58);" (statement_identifier "LAB_00105254") (: ":") (expression_statement "iVar3 = __fxstat(1,uVar4,&local_c58);" (assignment_expression "iVar3 = __fxstat(1,uVar4,&local_c58)" (identifier "iVar3") (= "=") (call_expression "__fxstat(1,uVar4,&local_c58)" (identifier "__fxstat") (argument_list "(1,uVar4,&local_c58)" (( "(") (number_literal "1") (, ",") (identifier "uVar4") (, ",") (pointer_expression "&local_c58" (& "&") (identifier "local_c58")) () ")")))) (; ";"))) (if_statement "if (iVar3 == 0) {\n      local_cb8 = local_c58.st_size;\n      local_c68 = local_c58.st_mtim.tv_sec;\n      local_c60 = local_c58.st_mtim.tv_nsec;\n      tVar7 = time((time_t *)&local_c70);\n      if (tVar7 == -1) {\n        uVar12 = dcgettext(0,"time system call failed",5);\n        piVar13 = __errno_location();\n        error(0,*piVar13,uVar12);\n      }\n      else {\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &local_c68;\n    }\n    else {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (time_t *)0x0;\n    }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      local_cb8 = local_c58.st_size;\n      local_c68 = local_c58.st_mtim.tv_sec;\n      local_c60 = local_c58.st_mtim.tv_nsec;\n      tVar7 = time((time_t *)&local_c70);\n      if (tVar7 == -1) {\n        uVar12 = dcgettext(0,"time system call failed",5);\n        piVar13 = __errno_location();\n        error(0,*piVar13,uVar12);\n      }\n      else {\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;\n      local_cc0 = &local_c68;\n    }" ({ "{") (expression_statement "local_cb8 = local_c58.st_size;" (assignment_expression "local_cb8 = local_c58.st_size" (identifier "local_cb8") (= "=") (field_expression "local_c58.st_size" (identifier "local_c58") (. ".") (field_identifier "st_size"))) (; ";")) (expression_statement "local_c68 = local_c58.st_mtim.tv_sec;" (assignment_expression "local_c68 = local_c58.st_mtim.tv_sec" (identifier "local_c68") (= "=") (field_expression "local_c58.st_mtim.tv_sec" (field_expression "local_c58.st_mtim" (identifier "local_c58") (. ".") (field_identifier "st_mtim")) (. ".") (field_identifier "tv_sec"))) (; ";")) (expression_statement "local_c60 = local_c58.st_mtim.tv_nsec;" (assignment_expression "local_c60 = local_c58.st_mtim.tv_nsec" (identifier "local_c60") (= "=") (field_expression "local_c58.st_mtim.tv_nsec" (field_expression "local_c58.st_mtim" (identifier "local_c58") (. ".") (field_identifier "st_mtim")) (. ".") (field_identifier "tv_nsec"))) (; ";")) (expression_statement "tVar7 = time((time_t *)&local_c70);" (assignment_expression "tVar7 = time((time_t *)&local_c70)" (identifier "tVar7") (= "=") (call_expression "time((time_t *)&local_c70)" (identifier "time") (argument_list "((time_t *)&local_c70)" (( "(") (cast_expression "(time_t *)&local_c70" (( "(") (type_descriptor "time_t *" (type_identifier "time_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&local_c70" (& "&") (identifier "local_c70"))) () ")")))) (; ";")) (if_statement "if (tVar7 == -1) {\n        uVar12 = dcgettext(0,"time system call failed",5);\n        piVar13 = __errno_location();\n        error(0,*piVar13,uVar12);\n      }\n      else {\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }" (if "if") (parenthesized_expression "(tVar7 == -1)" (( "(") (binary_expression "tVar7 == -1" (identifier "tVar7") (== "==") (number_literal "-1")) () ")")) (compound_statement "{\n        uVar12 = dcgettext(0,"time system call failed",5);\n        piVar13 = __errno_location();\n        error(0,*piVar13,uVar12);\n      }" ({ "{") (expression_statement "uVar12 = dcgettext(0,"time system call failed",5);" (assignment_expression "uVar12 = dcgettext(0,"time system call failed",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"time system call failed",5)" (identifier "dcgettext") (argument_list "(0,"time system call failed",5)" (( "(") (number_literal "0") (, ",") (string_literal ""time system call failed"" (" """) (string_content "time system call failed") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "piVar13 = __errno_location();" (assignment_expression "piVar13 = __errno_location()" (identifier "piVar13") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "error(0,*piVar13,uVar12);" (call_expression "error(0,*piVar13,uVar12)" (identifier "error") (argument_list "(0,*piVar13,uVar12)" (( "(") (number_literal "0") (, ",") (pointer_expression "*piVar13" (* "*") (identifier "piVar13")) (, ",") (identifier "uVar12") () ")"))) (; ";")) (} "}")) (else_clause "else {\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }" (else "else") (compound_statement "{\n        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);\n        iVar3 = DAT_00126018;\n        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }\n      }" ({ "{") (expression_statement "dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);" (assignment_expression "dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec)" (identifier "dVar28") (= "=") (call_expression "difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec)" (identifier "difftime") (argument_list "(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec)" (( "(") (call_expression "CONCAT44(uStack_c6c,local_c70)" (identifier "CONCAT44") (argument_list "(uStack_c6c,local_c70)" (( "(") (identifier "uStack_c6c") (, ",") (identifier "local_c70") () ")"))) (, ",") (field_expression "local_c58.st_mtim.tv_sec" (field_expression "local_c58.st_mtim" (identifier "local_c58") (. ".") (field_identifier "st_mtim")) (. ".") (field_identifier "tv_sec")) () ")")))) (; ";")) (expression_statement "iVar3 = DAT_00126018;" (assignment_expression "iVar3 = DAT_00126018" (identifier "iVar3") (= "=") (identifier "DAT_00126018")) (; ";")) (if_statement "if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }" (if "if") (parenthesized_expression "((double)(uint)(DAT_00126018 * 0x15180) < dVar28)" (( "(") (binary_expression "(double)(uint)(DAT_00126018 * 0x15180) < dVar28" (cast_expression "(double)(uint)(DAT_00126018 * 0x15180)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(uint)(DAT_00126018 * 0x15180)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(DAT_00126018 * 0x15180)" (( "(") (binary_expression "DAT_00126018 * 0x15180" (identifier "DAT_00126018") (* "*") (number_literal "0x15180")) () ")")))) (< "<") (identifier "dVar28")) () ")")) (compound_statement "{\n          uVar12 = dcgettext(0,&DAT_0011ed91,5);\n          uVar16 = dcgettext(0,&DAT_0011ed91,5);\n          uVar17 = FUN_0010ca58(0,8,local_cf8);\n          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);\n          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);\n        }" ({ "{") (expression_statement "uVar12 = dcgettext(0,&DAT_0011ed91,5);" (assignment_expression "uVar12 = dcgettext(0,&DAT_0011ed91,5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,&DAT_0011ed91,5)" (identifier "dcgettext") (argument_list "(0,&DAT_0011ed91,5)" (( "(") (number_literal "0") (, ",") (pointer_expression "&DAT_0011ed91" (& "&") (identifier "DAT_0011ed91")) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "uVar16 = dcgettext(0,&DAT_0011ed91,5);" (assignment_expression "uVar16 = dcgettext(0,&DAT_0011ed91,5)" (identifier "uVar16") (= "=") (call_expression "dcgettext(0,&DAT_0011ed91,5)" (identifier "dcgettext") (argument_list "(0,&DAT_0011ed91,5)" (( "(") (number_literal "0") (, ",") (pointer_expression "&DAT_0011ed91" (& "&") (identifier "DAT_0011ed91")) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "uVar17 = FUN_0010ca58(0,8,local_cf8);" (assignment_expression "uVar17 = FUN_0010ca58(0,8,local_cf8)" (identifier "uVar17") (= "=") (call_expression "FUN_0010ca58(0,8,local_cf8)" (identifier "FUN_0010ca58") (argument_list "(0,8,local_cf8)" (( "(") (number_literal "0") (, ",") (number_literal "8") (, ",") (identifier "local_cf8") () ")")))) (; ";")) (expression_statement "uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5);" (assignment_expression "uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5)" (identifier "uVar18") (= "=") (call_expression "dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5)" (identifier "dcgettext") (argument_list "(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"\n                             ,5)" (( "(") (number_literal "0") (, ",") (string_literal ""warning: database %s is more than %u %s old (actual age is %.1f %s)"" (" """) (string_content "warning: database %s is more than %u %s old (actual age is %.1f %s)") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);" (call_expression "error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12)" (identifier "error") (argument_list "(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12)" (( "(") (binary_expression "dVar28 / _DAT_0011ed98" (identifier "dVar28") (/ "/") (identifier "_DAT_0011ed98")) (, ",") (number_literal "0") (, ",") (number_literal "0") (, ",") (identifier "uVar18") (, ",") (identifier "uVar17") (, ",") (identifier "iVar3") (, ",") (identifier "uVar16") (, ",") (identifier "uVar12") () ")"))) (; ";")) (} "}"))) (} "}")))) (expression_statement "local_ce0 = fdopen(uVar4,"r");" (assignment_expression "local_ce0 = fdopen(uVar4,"r")" (identifier "local_ce0") (= "=") (call_expression "fdopen(uVar4,"r")" (identifier "fdopen") (argument_list "(uVar4,"r")" (( "(") (identifier "uVar4") (, ",") (string_literal ""r"" (" """) (string_content "r") (" """)) () ")")))) (; ";")) (if_statement "if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;" (if "if") (parenthesized_expression "(local_ce0 == (FILE *)0x0)" (( "(") (binary_expression "local_ce0 == (FILE *)0x0" (identifier "local_ce0") (== "==") (cast_expression "(FILE *)0x0" (( "(") (type_descriptor "FILE *" (type_identifier "FILE") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_00104b19;" (goto "goto") (statement_identifier "LAB_00104b19") (; ";"))) (expression_statement "local_cc0 = &local_c68;" (assignment_expression "local_cc0 = &local_c68" (identifier "local_cc0") (= "=") (pointer_expression "&local_c68" (& "&") (identifier "local_c68"))) (; ";")) (} "}")) (else_clause "else {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (time_t *)0x0;\n    }" (else "else") (compound_statement "{\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      local_ce0 = fdopen(uVar4,"r");\n      if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }\n      local_cb8 = 0;\n      local_cc0 = (time_t *)0x0;\n    }" ({ "{") (expression_statement "uVar12 = FUN_0010ca58(0,8,local_cf8);" (assignment_expression "uVar12 = FUN_0010ca58(0,8,local_cf8)" (identifier "uVar12") (= "=") (call_expression "FUN_0010ca58(0,8,local_cf8)" (identifier "FUN_0010ca58") (argument_list "(0,8,local_cf8)" (( "(") (number_literal "0") (, ",") (number_literal "8") (, ",") (identifier "local_cf8") () ")")))) (; ";")) (expression_statement "piVar13 = __errno_location();" (assignment_expression "piVar13 = __errno_location()" (identifier "piVar13") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "error(0,*piVar13,&DAT_001207c7,uVar12);" (call_expression "error(0,*piVar13,&DAT_001207c7,uVar12)" (identifier "error") (argument_list "(0,*piVar13,&DAT_001207c7,uVar12)" (( "(") (number_literal "0") (, ",") (pointer_expression "*piVar13" (* "*") (identifier "piVar13")) (, ",") (pointer_expression "&DAT_001207c7" (& "&") (identifier "DAT_001207c7")) (, ",") (identifier "uVar12") () ")"))) (; ";")) (expression_statement "local_ce0 = fdopen(uVar4,"r");" (assignment_expression "local_ce0 = fdopen(uVar4,"r")" (identifier "local_ce0") (= "=") (call_expression "fdopen(uVar4,"r")" (identifier "fdopen") (argument_list "(uVar4,"r")" (( "(") (identifier "uVar4") (, ",") (string_literal ""r"" (" """) (string_content "r") (" """)) () ")")))) (; ";")) (if_statement "if (local_ce0 == (FILE *)0x0) {\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }" (if "if") (parenthesized_expression "(local_ce0 == (FILE *)0x0)" (( "(") (binary_expression "local_ce0 == (FILE *)0x0" (identifier "local_ce0") (== "==") (cast_expression "(FILE *)0x0" (( "(") (type_descriptor "FILE *" (type_identifier "FILE") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        goto LAB_0010468d;\n      }" ({ "{") (labeled_statement "LAB_00104b19:\n        uVar12 = FUN_0010ca58(0,8,local_cf8);" (statement_identifier "LAB_00104b19") (: ":") (expression_statement "uVar12 = FUN_0010ca58(0,8,local_cf8);" (assignment_expression "uVar12 = FUN_0010ca58(0,8,local_cf8)" (identifier "uVar12") (= "=") (call_expression "FUN_0010ca58(0,8,local_cf8)" (identifier "FUN_0010ca58") (argument_list "(0,8,local_cf8)" (( "(") (number_literal "0") (, ",") (number_literal "8") (, ",") (identifier "local_cf8") () ")")))) (; ";"))) (expression_statement "piVar13 = __errno_location();" (assignment_expression "piVar13 = __errno_location()" (identifier "piVar13") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "error(0,*piVar13,&DAT_001207c7,uVar12);" (call_expression "error(0,*piVar13,&DAT_001207c7,uVar12)" (identifier "error") (argument_list "(0,*piVar13,&DAT_001207c7,uVar12)" (( "(") (number_literal "0") (, ",") (pointer_expression "*piVar13" (* "*") (identifier "piVar13")) (, ",") (pointer_expression "&DAT_001207c7" (& "&") (identifier "DAT_001207c7")) (, ",") (identifier "uVar12") () ")"))) (; ";")) (goto_statement "goto LAB_0010468d;" (goto "goto") (statement_identifier "LAB_0010468d") (; ";")) (} "}"))) (expression_statement "local_cb8 = 0;" (assignment_expression "local_cb8 = 0" (identifier "local_cb8") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_cc0 = (time_t *)0x0;" (assignment_expression "local_cc0 = (time_t *)0x0" (identifier "local_cc0") (= "=") (cast_expression "(time_t *)0x0" (( "(") (type_descriptor "time_t *" (type_identifier "time_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}")))) (expression_statement "iVar3 = DAT_00126200;" (assignment_expression "iVar3 = DAT_00126200" (identifier "iVar3") (= "=") (identifier "DAT_00126200")) (; ";")) (expression_statement "uVar4 = optind;" (assignment_expression "uVar4 = optind" (identifier "uVar4") (= "=") (identifier "optind")) (; ";")) (expression_statement "uVar6 = (ulong)optind;" (assignment_expression "uVar6 = (ulong)optind" (identifier "uVar6") (= "=") (cast_expression "(ulong)optind" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "optind"))) (; ";")) (expression_statement "iVar5 = param_1 - optind;" (assignment_expression "iVar5 = param_1 - optind" (identifier "iVar5") (= "=") (binary_expression "param_1 - optind" (identifier "param_1") (- "-") (identifier "optind"))) (; ";")) (expression_statement "local_cd4 = DAT_00126200;" (assignment_expression "local_cd4 = DAT_00126200" (identifier "local_cd4") (= "=") (identifier "DAT_00126200")) (; ";")) (expression_statement "local_b90 = 0;" (assignment_expression "local_b90 = 0" (identifier "local_b90") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_bc8[1] = 0;" (assignment_expression "local_bc8[1] = 0" (subscript_expression "local_bc8[1]" (identifier "local_bc8") ([ "[") (number_literal "1") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "local_bc8[2] = 0;" (assignment_expression "local_bc8[2] = 0" (subscript_expression "local_bc8[2]" (identifier "local_bc8") ([ "[") (number_literal "2") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "local_b98 = local_cf8;" (assignment_expression "local_b98 = local_cf8" (identifier "local_b98") (= "=") (identifier "local_cf8")) (; ";")) (expression_statement "local_ba0 = local_ce0;" (assignment_expression "local_ba0 = local_ce0" (identifier "local_ba0") (= "=") (identifier "local_ce0")) (; ";")) (expression_statement "DAT_00126220 = 0;" (assignment_expression "DAT_00126220 = 0" (identifier "DAT_00126220") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_00126218 = 0;" (assignment_expression "DAT_00126218 = 0" (identifier "DAT_00126218") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_00126210 = 0;" (assignment_expression "DAT_00126210 = 0" (identifier "DAT_00126210") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_00126288 = '\0';" (assignment_expression "DAT_00126288 = '\0'" (identifier "DAT_00126288") (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "local_bb0 = 0x80;" (assignment_expression "local_bb0 = 0x80" (identifier "local_bb0") (= "=") (number_literal "0x80")) (; ";")) (expression_statement "local_bb8 = (byte *)FUN_0010d559(0x80);" (assignment_expression "local_bb8 = (byte *)FUN_0010d559(0x80)" (identifier "local_bb8") (= "=") (cast_expression "(byte *)FUN_0010d559(0x80)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0010d559(0x80)" (identifier "FUN_0010d559") (argument_list "(0x80)" (( "(") (number_literal "0x80") () ")"))))) (; ";")) (expression_statement "sVar14 = fread(local_bb8,1,2,local_ba0);" (assignment_expression "sVar14 = fread(local_bb8,1,2,local_ba0)" (identifier "sVar14") (= "=") (call_expression "fread(local_bb8,1,2,local_ba0)" (identifier "fread") (argument_list "(local_bb8,1,2,local_ba0)" (( "(") (identifier "local_bb8") (, ",") (number_literal "1") (, ",") (number_literal "2") (, ",") (identifier "local_ba0") () ")")))) (; ";")) (expression_statement "pbVar8 = local_bb8;" (assignment_expression "pbVar8 = local_bb8" (identifier "pbVar8") (= "=") (identifier "local_bb8")) (; ";")) (expression_statement "uVar24 = (ulong)(int)sVar14;" (assignment_expression "uVar24 = (ulong)(int)sVar14" (identifier "uVar24") (= "=") (cast_expression "(ulong)(int)sVar14" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (cast_expression "(int)sVar14" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "sVar14")))) (; ";")) (if_statement "if (2 < uVar24) {\n                    \n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }" (if "if") (parenthesized_expression "(2 < uVar24)" (( "(") (binary_expression "2 < uVar24" (number_literal "2") (< "<") (identifier "uVar24")) () ")")) (compound_statement "{\n                    \n      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");\n    }" ({ "{") (expression_statement "__assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");" (call_expression "__assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb")" (identifier "__assert_fail") (argument_list "("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb")" (( "(") (string_literal ""len <= 2"" (" """) (string_content "len <= 2") (" """)) (, ",") (string_literal ""locate.c"" (" """) (string_content "locate.c") (" """)) (, ",") (number_literal "0x3a5") (, ",") (string_literal ""looking_at_slocate_locatedb"" (" """) (string_content "looking_at_slocate_locatedb") (" """)) () ")"))) (; ";")) (} "}"))) (if_statement "if ((uVar24 < 2) || (local_bb8[1] != 0)) {\nLAB_00105aa4:\n      FUN_001040e7(local_bc8,10,0);\n      sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0);\n      iVar3 = (int)sVar14 + (int)sVar20;\n      if (((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)) {\n        FUN_001040e7(local_bc8,0x100,0);\n        if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        uVar6 = FUN_0010ca58(0,8,local_cf8);\n        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar12,uVar6);\nLAB_00104daa:\n        uVar4 = (uint)uVar6;\n        FUN_001039a8(FUN_00103e25,0);\n      }\n      else {\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar5) {\n        plVar26 = param_2 + (int)uVar4;\n        do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);\n      }\n      lVar10 = DAT_00126218;\n      if (local_cd4 == 1) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }\n      }\n      else if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }\n      if (local_cec != 0) {\n        FUN_001039a8(FUN_00103a70,&DAT_00126240);\n      }\n      if (local_cb0 != 0) {\n        if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }\n      }\n      if (local_cd8 == 0) {\n        FUN_001039a8(FUN_001038a4,&DAT_00126270);\n      }\n      else {\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }\n      pcVar1 = local_b98;\n      if (iVar5 < 2) {\n        DAT_00126208 = FUN_00103755;\n      }\n      else {\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }\n      if (local_cec != 0) {\n        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar12,pcVar1,local_ca0);\n      }\n      local_bc8[0] = getc(local_ba0);\n      if ((local_bc8[0] != -1) && (local_cac != 0)) {\n        ungetc(local_bc8[0],local_ba0);\n        local_bc8[0] = 0;\n      }\n      do {\n        if (local_bc8[0] == -1) break;\n        iVar3 = (*DAT_00126208)(local_bc8);\n      } while (iVar3 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }\n        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar3 = ferror(local_ba0);\n      uVar6 = DAT_00126278;\n      if (iVar3 != 0) {\n        uVar12 = FUN_0010ca58(0,8,local_b98);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        uVar6 = 0;\n      }\n    }\n    else {\n      ppuVar15 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar23 = (char)*pbVar8 + -0x30;\n      if (iVar23 < 2) {\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar16,uVar12,0);\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar16,uVar12,iVar23);\n      uVar6 = 0;\n    }" (if "if") (parenthesized_expression "((uVar24 < 2) || (local_bb8[1] != 0))" (( "(") (binary_expression "(uVar24 < 2) || (local_bb8[1] != 0)" (parenthesized_expression "(uVar24 < 2)" (( "(") (binary_expression "uVar24 < 2" (identifier "uVar24") (< "<") (number_literal "2")) () ")")) (|| "||") (parenthesized_expression "(local_bb8[1] != 0)" (( "(") (binary_expression "local_bb8[1] != 0" (subscript_expression "local_bb8[1]" (identifier "local_bb8") ([ "[") (number_literal "1") (] "]")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\nLAB_00105aa4:\n      FUN_001040e7(local_bc8,10,0);\n      sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0);\n      iVar3 = (int)sVar14 + (int)sVar20;\n      if (((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)) {\n        FUN_001040e7(local_bc8,0x100,0);\n        if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        uVar6 = FUN_0010ca58(0,8,local_cf8);\n        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar12,uVar6);\nLAB_00104daa:\n        uVar4 = (uint)uVar6;\n        FUN_001039a8(FUN_00103e25,0);\n      }\n      else {\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }\n      if (0 < iVar5) {\n        plVar26 = param_2 + (int)uVar4;\n        do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);\n      }\n      lVar10 = DAT_00126218;\n      if (local_cd4 == 1) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }\n      }\n      else if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }\n      if (local_cec != 0) {\n        FUN_001039a8(FUN_00103a70,&DAT_00126240);\n      }\n      if (local_cb0 != 0) {\n        if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }\n      }\n      if (local_cd8 == 0) {\n        FUN_001039a8(FUN_001038a4,&DAT_00126270);\n      }\n      else {\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }\n      pcVar1 = local_b98;\n      if (iVar5 < 2) {\n        DAT_00126208 = FUN_00103755;\n      }\n      else {\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }\n      if (local_cec != 0) {\n        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar12,pcVar1,local_ca0);\n      }\n      local_bc8[0] = getc(local_ba0);\n      if ((local_bc8[0] != -1) && (local_cac != 0)) {\n        ungetc(local_bc8[0],local_ba0);\n        local_bc8[0] = 0;\n      }\n      do {\n        if (local_bc8[0] == -1) break;\n        iVar3 = (*DAT_00126208)(local_bc8);\n      } while (iVar3 != 8);\n      if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }\n        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }\n      }\n      iVar3 = ferror(local_ba0);\n      uVar6 = DAT_00126278;\n      if (iVar3 != 0) {\n        uVar12 = FUN_0010ca58(0,8,local_b98);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        uVar6 = 0;\n      }\n    }" ({ "{") (labeled_statement "LAB_00105aa4:\n      FUN_001040e7(local_bc8,10,0);" (statement_identifier "LAB_00105aa4") (: ":") (expression_statement "FUN_001040e7(local_bc8,10,0);" (call_expression "FUN_001040e7(local_bc8,10,0)" (identifier "FUN_001040e7") (argument_list "(local_bc8,10,0)" (( "(") (identifier "local_bc8") (, ",") (number_literal "10") (, ",") (number_literal "0") () ")"))) (; ";"))) (expression_statement "sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0);" (assignment_expression "sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0)" (identifier "sVar20") (= "=") (call_expression "fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0)" (identifier "fread") (argument_list "(local_bb8 + uVar24,1,10 - uVar24,local_ba0)" (( "(") (binary_expression "local_bb8 + uVar24" (identifier "local_bb8") (+ "+") (identifier "uVar24")) (, ",") (number_literal "1") (, ",") (binary_expression "10 - uVar24" (number_literal "10") (- "-") (identifier "uVar24")) (, ",") (identifier "local_ba0") () ")")))) (; ";")) (expression_statement "iVar3 = (int)sVar14 + (int)sVar20;" (assignment_expression "iVar3 = (int)sVar14 + (int)sVar20" (identifier "iVar3") (= "=") (binary_expression "(int)sVar14 + (int)sVar20" (cast_expression "(int)sVar14" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "sVar14")) (+ "+") (cast_expression "(int)sVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "sVar20")))) (; ";")) (if_statement "if (((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)) {\n        FUN_001040e7(local_bc8,0x100,0);\n        if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        uVar6 = FUN_0010ca58(0,8,local_cf8);\n        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar12,uVar6);\nLAB_00104daa:\n        uVar4 = (uint)uVar6;\n        FUN_001039a8(FUN_00103e25,0);\n      }\n      else {\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }" (if "if") (parenthesized_expression "(((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0))" (( "(") (binary_expression "((ulong)(long)iVar3 < 10) ||\n         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)" (parenthesized_expression "((ulong)(long)iVar3 < 10)" (( "(") (binary_expression "(ulong)(long)iVar3 < 10" (cast_expression "(ulong)(long)iVar3" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (cast_expression "(long)iVar3" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "iVar3"))) (< "<") (number_literal "10")) () ")")) (|| "||") (parenthesized_expression "(local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)" (( "(") (comma_expression "local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0" (assignment_expression "local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10)" (identifier "local_ca8") (= "=") (call_expression "memcmp(local_bb8,&DAT_0011eb40,10)" (identifier "memcmp") (argument_list "(local_bb8,&DAT_0011eb40,10)" (( "(") (identifier "local_bb8") (, ",") (pointer_expression "&DAT_0011eb40" (& "&") (identifier "DAT_0011eb40")) (, ",") (number_literal "10") () ")")))) (, ",") (binary_expression "local_ca8 != 0" (identifier "local_ca8") (!= "!=") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n        FUN_001040e7(local_bc8,0x100,0);\n        if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }\n        uVar6 = FUN_0010ca58(0,8,local_cf8);\n        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);\n        error(1,0,uVar12,uVar6);\nLAB_00104daa:\n        uVar4 = (uint)uVar6;\n        FUN_001039a8(FUN_00103e25,0);\n      }" ({ "{") (expression_statement "FUN_001040e7(local_bc8,0x100,0);" (call_expression "FUN_001040e7(local_bc8,0x100,0)" (identifier "FUN_001040e7") (argument_list "(local_bc8,0x100,0)" (( "(") (identifier "local_bc8") (, ",") (number_literal "0x100") (, ",") (number_literal "0") () ")"))) (; ";")) (if_statement "if ((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)) {\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }" (if "if") (parenthesized_expression "((0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100))" (( "(") (binary_expression "(0xff < iVar3) ||\n           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)" (parenthesized_expression "(0xff < iVar3)" (( "(") (binary_expression "0xff < iVar3" (number_literal "0xff") (< "<") (identifier "iVar3")) () ")")) (|| "||") (parenthesized_expression "(sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100)" (( "(") (comma_expression "sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),\n           iVar3 + (int)sVar14 == 0x100" (assignment_expression "sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0)" (identifier "sVar14") (= "=") (call_expression "fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0)" (identifier "fread") (argument_list "(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0)" (( "(") (binary_expression "local_bb8 + iVar3" (identifier "local_bb8") (+ "+") (identifier "iVar3")) (, ",") (number_literal "1") (, ",") (cast_expression "(long)(0x100 - iVar3)" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (parenthesized_expression "(0x100 - iVar3)" (( "(") (binary_expression "0x100 - iVar3" (number_literal "0x100") (- "-") (identifier "iVar3")) () ")"))) (, ",") (identifier "local_ba0") () ")")))) (, ",") (binary_expression "iVar3 + (int)sVar14 == 0x100" (binary_expression "iVar3 + (int)sVar14" (identifier "iVar3") (+ "+") (cast_expression "(int)sVar14" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "sVar14"))) (== "==") (number_literal "0x100"))) () ")"))) () ")")) (compound_statement "{\n          pbVar8 = local_b8c;\n          pbVar21 = local_bb8;\n          do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);\n          FUN_001039a8(FUN_00104183,0);\n          local_cac = local_cc8;\n          local_ca0 = "old";\n          local_ca8 = 1;\n          goto LAB_0010543a;\n        }" ({ "{") (expression_statement "pbVar8 = local_b8c;" (assignment_expression "pbVar8 = local_b8c" (identifier "pbVar8") (= "=") (identifier "local_b8c")) (; ";")) (expression_statement "pbVar21 = local_bb8;" (assignment_expression "pbVar21 = local_bb8" (identifier "pbVar21") (= "=") (identifier "local_bb8")) (; ";")) (do_statement "do {\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          } while (pbVar8 != local_b0c);" (do "do") (compound_statement "{\n            *pbVar8 = *pbVar21;\n            pbVar8[0x80] = pbVar21[1];\n            pbVar21 = pbVar21 + 2;\n            pbVar8 = pbVar8 + 1;\n          }" ({ "{") (expression_statement "*pbVar8 = *pbVar21;" (assignment_expression "*pbVar8 = *pbVar21" (pointer_expression "*pbVar8" (* "*") (identifier "pbVar8")) (= "=") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21"))) (; ";")) (expression_statement "pbVar8[0x80] = pbVar21[1];" (assignment_expression "pbVar8[0x80] = pbVar21[1]" (subscript_expression "pbVar8[0x80]" (identifier "pbVar8") ([ "[") (number_literal "0x80") (] "]")) (= "=") (subscript_expression "pbVar21[1]" (identifier "pbVar21") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + 2;" (assignment_expression "pbVar21 = pbVar21 + 2" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + 2" (identifier "pbVar21") (+ "+") (number_literal "2"))) (; ";")) (expression_statement "pbVar8 = pbVar8 + 1;" (assignment_expression "pbVar8 = pbVar8 + 1" (identifier "pbVar8") (= "=") (binary_expression "pbVar8 + 1" (identifier "pbVar8") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(pbVar8 != local_b0c)" (( "(") (binary_expression "pbVar8 != local_b0c" (identifier "pbVar8") (!= "!=") (identifier "local_b0c")) () ")")) (; ";")) (expression_statement "FUN_001039a8(FUN_00104183,0);" (call_expression "FUN_001039a8(FUN_00104183,0)" (identifier "FUN_001039a8") (argument_list "(FUN_00104183,0)" (( "(") (identifier "FUN_00104183") (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "local_cac = local_cc8;" (assignment_expression "local_cac = local_cc8" (identifier "local_cac") (= "=") (identifier "local_cc8")) (; ";")) (expression_statement "local_ca0 = "old";" (assignment_expression "local_ca0 = "old"" (identifier "local_ca0") (= "=") (string_literal ""old"" (" """) (string_content "old") (" """))) (; ";")) (expression_statement "local_ca8 = 1;" (assignment_expression "local_ca8 = 1" (identifier "local_ca8") (= "=") (number_literal "1")) (; ";")) (goto_statement "goto LAB_0010543a;" (goto "goto") (statement_identifier "LAB_0010543a") (; ";")) (} "}"))) (expression_statement "uVar6 = FUN_0010ca58(0,8,local_cf8);" (assignment_expression "uVar6 = FUN_0010ca58(0,8,local_cf8)" (identifier "uVar6") (= "=") (call_expression "FUN_0010ca58(0,8,local_cf8)" (identifier "FUN_0010ca58") (argument_list "(0,8,local_cf8)" (( "(") (number_literal "0") (, ",") (number_literal "8") (, ",") (identifier "local_cf8") () ")")))) (; ";")) (expression_statement "uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);" (assignment_expression "uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"Old-format locate database %s is too short to be valid",5)" (identifier "dcgettext") (argument_list "(0,"Old-format locate database %s is too short to be valid",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Old-format locate database %s is too short to be valid"" (" """) (string_content "Old-format locate database %s is too short to be valid") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "error(1,0,uVar12,uVar6);" (call_expression "error(1,0,uVar12,uVar6)" (identifier "error") (argument_list "(1,0,uVar12,uVar6)" (( "(") (number_literal "1") (, ",") (number_literal "0") (, ",") (identifier "uVar12") (, ",") (identifier "uVar6") () ")"))) (; ";")) (labeled_statement "LAB_00104daa:\n        uVar4 = (uint)uVar6;" (statement_identifier "LAB_00104daa") (: ":") (expression_statement "uVar4 = (uint)uVar6;" (assignment_expression "uVar4 = (uint)uVar6" (identifier "uVar4") (= "=") (cast_expression "(uint)uVar6" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar6"))) (; ";"))) (expression_statement "FUN_001039a8(FUN_00103e25,0);" (call_expression "FUN_001039a8(FUN_00103e25,0)" (identifier "FUN_001039a8") (argument_list "(FUN_00103e25,0)" (( "(") (identifier "FUN_00103e25") (, ",") (number_literal "0") () ")"))) (; ";")) (} "}")) (else_clause "else {\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }" (else "else") (compound_statement "{\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca0 = "GNU LOCATE02";\n        local_cac = 0;\nLAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;\n      }" ({ "{") (expression_statement "FUN_001039a8(FUN_00103e3d,0);" (call_expression "FUN_001039a8(FUN_00103e3d,0)" (identifier "FUN_001039a8") (argument_list "(FUN_00103e3d,0)" (( "(") (identifier "FUN_00103e3d") (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "local_ca0 = "GNU LOCATE02";" (assignment_expression "local_ca0 = "GNU LOCATE02"" (identifier "local_ca0") (= "=") (string_literal ""GNU LOCATE02"" (" """) (string_content "GNU LOCATE02") (" """))) (; ";")) (expression_statement "local_cac = 0;" (assignment_expression "local_cac = 0" (identifier "local_cac") (= "=") (number_literal "0")) (; ";")) (labeled_statement "LAB_0010543a:\n        if (local_cc4 != 0) goto LAB_00104daa;" (statement_identifier "LAB_0010543a") (: ":") (if_statement "if (local_cc4 != 0) goto LAB_00104daa;" (if "if") (parenthesized_expression "(local_cc4 != 0)" (( "(") (binary_expression "local_cc4 != 0" (identifier "local_cc4") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00104daa;" (goto "goto") (statement_identifier "LAB_00104daa") (; ";")))) (} "}")))) (if_statement "if (0 < iVar5) {\n        plVar26 = param_2 + (int)uVar4;\n        do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);\n      }" (if "if") (parenthesized_expression "(0 < iVar5)" (( "(") (binary_expression "0 < iVar5" (number_literal "0") (< "<") (identifier "iVar5")) () ")")) (compound_statement "{\n        plVar26 = param_2 + (int)uVar4;\n        do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);\n      }" ({ "{") (expression_statement "plVar26 = param_2 + (int)uVar4;" (assignment_expression "plVar26 = param_2 + (int)uVar4" (identifier "plVar26") (= "=") (binary_expression "param_2 + (int)uVar4" (identifier "param_2") (+ "+") (cast_expression "(int)uVar4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar4")))) (; ";")) (do_statement "do {\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);" (do "do") (compound_statement "{\n          DAT_00126288 = '\x01';\n          pcVar1 = (char *)*plVar26;\n          if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }\n          plVar26 = plVar26 + 1;\n        }" ({ "{") (expression_statement "DAT_00126288 = '\x01';" (assignment_expression "DAT_00126288 = '\x01'" (identifier "DAT_00126288") (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (expression_statement "pcVar1 = (char *)*plVar26;" (assignment_expression "pcVar1 = (char *)*plVar26" (identifier "pcVar1") (= "=") (cast_expression "(char *)*plVar26" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*plVar26" (* "*") (identifier "plVar26")))) (; ";")) (if_statement "if (local_d04 == 0) {\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }\n          else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }" (if "if") (parenthesized_expression "(local_d04 == 0)" (( "(") (binary_expression "local_d04 == 0" (identifier "local_d04") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            pcVar11 = strpbrk(pcVar1,"*?[]\\");\n            if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }\n          }" ({ "{") (expression_statement "pcVar11 = strpbrk(pcVar1,"*?[]\\");" (assignment_expression "pcVar11 = strpbrk(pcVar1,"*?[]\\")" (identifier "pcVar11") (= "=") (call_expression "strpbrk(pcVar1,"*?[]\\")" (identifier "strpbrk") (argument_list "(pcVar1,"*?[]\\")" (( "(") (identifier "pcVar1") (, ",") (string_literal ""*?[]\\"" (" """) (string_content "*?[]") (escape_sequence "\\") (" """)) () ")")))) (; ";")) (if_statement "if (pcVar11 == (char *)0x0) {\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }\n            else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }" (if "if") (parenthesized_expression "(pcVar11 == (char *)0x0)" (( "(") (binary_expression "pcVar11 == (char *)0x0" (identifier "pcVar11") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n              sVar14 = __ctype_get_mb_cur_max();\n              if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }\n              FUN_001039a8(pcVar25,pcVar1);\n            }" ({ "{") (expression_statement "sVar14 = __ctype_get_mb_cur_max();" (assignment_expression "sVar14 = __ctype_get_mb_cur_max()" (identifier "sVar14") (= "=") (call_expression "__ctype_get_mb_cur_max()" (identifier "__ctype_get_mb_cur_max") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (sVar14 == 1) {\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }\n              else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }" (if "if") (parenthesized_expression "(sVar14 == 1)" (( "(") (binary_expression "sVar14 == 1" (identifier "sVar14") (== "==") (number_literal "1")) () ")")) (compound_statement "{\n                pcVar25 = FUN_00103ce1;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }\n              }" ({ "{") (expression_statement "pcVar25 = FUN_00103ce1;" (assignment_expression "pcVar25 = FUN_00103ce1" (identifier "pcVar25") (= "=") (identifier "FUN_00103ce1")) (; ";")) (if_statement "if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103d36;\n                }" (if "if") (parenthesized_expression "(unaff_R15D != 0)" (( "(") (binary_expression "unaff_R15D != 0" (identifier "unaff_R15D") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                  pcVar25 = FUN_00103d36;\n                }" ({ "{") (expression_statement "pcVar25 = FUN_00103d36;" (assignment_expression "pcVar25 = FUN_00103d36" (identifier "pcVar25") (= "=") (identifier "FUN_00103d36")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }" (else "else") (compound_statement "{\n                pcVar25 = FUN_00103ca5;\n                if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }\n              }" ({ "{") (expression_statement "pcVar25 = FUN_00103ca5;" (assignment_expression "pcVar25 = FUN_00103ca5" (identifier "pcVar25") (= "=") (identifier "FUN_00103ca5")) (; ";")) (if_statement "if (unaff_R15D != 0) {\n                  pcVar25 = FUN_00103cc3;\n                }" (if "if") (parenthesized_expression "(unaff_R15D != 0)" (( "(") (binary_expression "unaff_R15D != 0" (identifier "unaff_R15D") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                  pcVar25 = FUN_00103cc3;\n                }" ({ "{") (expression_statement "pcVar25 = FUN_00103cc3;" (assignment_expression "pcVar25 = FUN_00103cc3" (identifier "pcVar25") (= "=") (identifier "FUN_00103cc3")) (; ";")) (} "}"))) (} "}")))) (expression_statement "FUN_001039a8(pcVar25,pcVar1);" (call_expression "FUN_001039a8(pcVar25,pcVar1)" (identifier "FUN_001039a8") (argument_list "(pcVar25,pcVar1)" (( "(") (identifier "pcVar25") (, ",") (identifier "pcVar1") () ")"))) (; ";")) (} "}")) (else_clause "else {\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }" (else "else") (compound_statement "{\n              if (unaff_R15D == 0) goto LAB_00104ee7;\n              FUN_001039a8(FUN_00103db3,pcVar1);\n            }" ({ "{") (if_statement "if (unaff_R15D == 0) goto LAB_00104ee7;" (if "if") (parenthesized_expression "(unaff_R15D == 0)" (( "(") (binary_expression "unaff_R15D == 0" (identifier "unaff_R15D") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00104ee7;" (goto "goto") (statement_identifier "LAB_00104ee7") (; ";"))) (expression_statement "FUN_001039a8(FUN_00103db3,pcVar1);" (call_expression "FUN_001039a8(FUN_00103db3,pcVar1)" (identifier "FUN_001039a8") (argument_list "(FUN_00103db3,pcVar1)" (( "(") (identifier "FUN_00103db3") (, ",") (identifier "pcVar1") () ")"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }" (else "else") (compound_statement "{\n            puVar9 = (undefined8 *)FUN_0010d559(0x40);\n            *puVar9 = 0;\n            puVar9[1] = 0;\n            puVar9[2] = 0;\n            puVar9[3] = 0;\n            puVar9[4] = 0;\n            puVar9[5] = 0;\n            puVar9[6] = 0;\n            puVar9[7] = 0;\n            FUN_0011b1c7((long)(int)local_cf0);\n            puVar9[1] = 100;\n            uVar12 = FUN_0010d559(100);\n            *puVar9 = uVar12;\n            puVar9[4] = 0;\n            puVar9[3] = (long)(int)local_cf0;\n            puVar9[5] = 0;\n            uVar6 = 0xffffffffffffffff;\n            pcVar11 = pcVar1;\n            do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');\n            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);\n            if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }\n          }" ({ "{") (expression_statement "puVar9 = (undefined8 *)FUN_0010d559(0x40);" (assignment_expression "puVar9 = (undefined8 *)FUN_0010d559(0x40)" (identifier "puVar9") (= "=") (cast_expression "(undefined8 *)FUN_0010d559(0x40)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0010d559(0x40)" (identifier "FUN_0010d559") (argument_list "(0x40)" (( "(") (number_literal "0x40") () ")"))))) (; ";")) (expression_statement "*puVar9 = 0;" (assignment_expression "*puVar9 = 0" (pointer_expression "*puVar9" (* "*") (identifier "puVar9")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar9[1] = 0;" (assignment_expression "puVar9[1] = 0" (subscript_expression "puVar9[1]" (identifier "puVar9") ([ "[") (number_literal "1") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar9[2] = 0;" (assignment_expression "puVar9[2] = 0" (subscript_expression "puVar9[2]" (identifier "puVar9") ([ "[") (number_literal "2") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar9[3] = 0;" (assignment_expression "puVar9[3] = 0" (subscript_expression "puVar9[3]" (identifier "puVar9") ([ "[") (number_literal "3") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar9[4] = 0;" (assignment_expression "puVar9[4] = 0" (subscript_expression "puVar9[4]" (identifier "puVar9") ([ "[") (number_literal "4") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar9[5] = 0;" (assignment_expression "puVar9[5] = 0" (subscript_expression "puVar9[5]" (identifier "puVar9") ([ "[") (number_literal "5") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar9[6] = 0;" (assignment_expression "puVar9[6] = 0" (subscript_expression "puVar9[6]" (identifier "puVar9") ([ "[") (number_literal "6") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar9[7] = 0;" (assignment_expression "puVar9[7] = 0" (subscript_expression "puVar9[7]" (identifier "puVar9") ([ "[") (number_literal "7") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "FUN_0011b1c7((long)(int)local_cf0);" (call_expression "FUN_0011b1c7((long)(int)local_cf0)" (identifier "FUN_0011b1c7") (argument_list "((long)(int)local_cf0)" (( "(") (cast_expression "(long)(int)local_cf0" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (cast_expression "(int)local_cf0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_cf0"))) () ")"))) (; ";")) (expression_statement "puVar9[1] = 100;" (assignment_expression "puVar9[1] = 100" (subscript_expression "puVar9[1]" (identifier "puVar9") ([ "[") (number_literal "1") (] "]")) (= "=") (number_literal "100")) (; ";")) (expression_statement "uVar12 = FUN_0010d559(100);" (assignment_expression "uVar12 = FUN_0010d559(100)" (identifier "uVar12") (= "=") (call_expression "FUN_0010d559(100)" (identifier "FUN_0010d559") (argument_list "(100)" (( "(") (number_literal "100") () ")")))) (; ";")) (expression_statement "*puVar9 = uVar12;" (assignment_expression "*puVar9 = uVar12" (pointer_expression "*puVar9" (* "*") (identifier "puVar9")) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "puVar9[4] = 0;" (assignment_expression "puVar9[4] = 0" (subscript_expression "puVar9[4]" (identifier "puVar9") ([ "[") (number_literal "4") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar9[3] = (long)(int)local_cf0;" (assignment_expression "puVar9[3] = (long)(int)local_cf0" (subscript_expression "puVar9[3]" (identifier "puVar9") ([ "[") (number_literal "3") (] "]")) (= "=") (cast_expression "(long)(int)local_cf0" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (cast_expression "(int)local_cf0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_cf0")))) (; ";")) (expression_statement "puVar9[5] = 0;" (assignment_expression "puVar9[5] = 0" (subscript_expression "puVar9[5]" (identifier "puVar9") ([ "[") (number_literal "5") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar6 = 0xffffffffffffffff;" (assignment_expression "uVar6 = 0xffffffffffffffff" (identifier "uVar6") (= "=") (number_literal "0xffffffffffffffff")) (; ";")) (expression_statement "pcVar11 = pcVar1;" (assignment_expression "pcVar11 = pcVar1" (identifier "pcVar11") (= "=") (identifier "pcVar1")) (; ";")) (do_statement "do {\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            } while (cVar2 != '\0');" (do "do") (compound_statement "{\n              if (uVar6 == 0) break;\n              uVar6 = uVar6 - 1;\n              cVar2 = *pcVar11;\n              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;\n            }" ({ "{") (if_statement "if (uVar6 == 0) break;" (if "if") (parenthesized_expression "(uVar6 == 0)" (( "(") (binary_expression "uVar6 == 0" (identifier "uVar6") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "uVar6 = uVar6 - 1;" (assignment_expression "uVar6 = uVar6 - 1" (identifier "uVar6") (= "=") (binary_expression "uVar6 - 1" (identifier "uVar6") (- "-") (number_literal "1"))) (; ";")) (expression_statement "cVar2 = *pcVar11;" (assignment_expression "cVar2 = *pcVar11" (identifier "cVar2") (= "=") (pointer_expression "*pcVar11" (* "*") (identifier "pcVar11"))) (; ";")) (expression_statement "pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;" (assignment_expression "pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1" (identifier "pcVar11") (= "=") (binary_expression "pcVar11 + (ulong)bVar27 * -2 + 1" (binary_expression "pcVar11 + (ulong)bVar27 * -2" (identifier "pcVar11") (+ "+") (binary_expression "(ulong)bVar27 * -2" (cast_expression "(ulong)bVar27" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar27")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(cVar2 != '\0')" (( "(") (binary_expression "cVar2 != '\0'" (identifier "cVar2") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (; ";")) (expression_statement "lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);" (assignment_expression "lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9)" (identifier "lVar10") (= "=") (call_expression "FUN_0011b159(pcVar1,~uVar6 - 1,puVar9)" (identifier "FUN_0011b159") (argument_list "(pcVar1,~uVar6 - 1,puVar9)" (( "(") (identifier "pcVar1") (, ",") (binary_expression "~uVar6 - 1" (unary_expression "~uVar6" (~ "~") (identifier "uVar6")) (- "-") (number_literal "1")) (, ",") (identifier "puVar9") () ")")))) (; ";")) (if_statement "if (lVar10 == 0) {\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }\n            else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }" (if "if") (parenthesized_expression "(lVar10 == 0)" (( "(") (binary_expression "lVar10 == 0" (identifier "lVar10") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              FUN_001039a8(FUN_00103ddb,puVar9);\n            }" ({ "{") (expression_statement "FUN_001039a8(FUN_00103ddb,puVar9);" (call_expression "FUN_001039a8(FUN_00103ddb,puVar9)" (identifier "FUN_001039a8") (argument_list "(FUN_00103ddb,puVar9)" (( "(") (identifier "FUN_00103ddb") (, ",") (identifier "puVar9") () ")"))) (; ";")) (} "}")) (else_clause "else {\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }" (else "else") (compound_statement "{\n              error(1,0,&DAT_001207c7,lVar10);\nLAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);\n            }" ({ "{") (expression_statement "error(1,0,&DAT_001207c7,lVar10);" (call_expression "error(1,0,&DAT_001207c7,lVar10)" (identifier "error") (argument_list "(1,0,&DAT_001207c7,lVar10)" (( "(") (number_literal "1") (, ",") (number_literal "0") (, ",") (pointer_expression "&DAT_001207c7" (& "&") (identifier "DAT_001207c7")) (, ",") (identifier "lVar10") () ")"))) (; ";")) (labeled_statement "LAB_00104ee7:\n              FUN_001039a8(FUN_00103d8b,pcVar1);" (statement_identifier "LAB_00104ee7") (: ":") (expression_statement "FUN_001039a8(FUN_00103d8b,pcVar1);" (call_expression "FUN_001039a8(FUN_00103d8b,pcVar1)" (identifier "FUN_001039a8") (argument_list "(FUN_00103d8b,pcVar1)" (( "(") (identifier "FUN_00103d8b") (, ",") (identifier "pcVar1") () ")"))) (; ";"))) (} "}")))) (} "}")))) (expression_statement "plVar26 = plVar26 + 1;" (assignment_expression "plVar26 = plVar26 + 1" (identifier "plVar26") (= "=") (binary_expression "plVar26 + 1" (identifier "plVar26") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1)" (( "(") (binary_expression "plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1" (identifier "plVar26") (!= "!=") (binary_expression "param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1" (binary_expression "param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1)" (binary_expression "param_2 + (long)(int)uVar4" (identifier "param_2") (+ "+") (cast_expression "(long)(int)uVar4" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (cast_expression "(int)uVar4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar4")))) (+ "+") (call_expression "(ulong)(iVar5 - 1)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(iVar5 - 1)" (( "(") (binary_expression "iVar5 - 1" (identifier "iVar5") (- "-") (number_literal "1")) () ")")))) (+ "+") (number_literal "1"))) () ")")) (; ";")) (} "}"))) (expression_statement "lVar10 = DAT_00126218;" (assignment_expression "lVar10 = DAT_00126218" (identifier "lVar10") (= "=") (identifier "DAT_00126218")) (; ";")) (if_statement "if (local_cd4 == 1) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }\n      }\n      else if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }" (if "if") (parenthesized_expression "(local_cd4 == 1)" (( "(") (binary_expression "local_cd4 == 1" (identifier "local_cd4") (== "==") (number_literal "1")) () ")")) (compound_statement "{\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }\n      }" ({ "{") (expression_statement "DAT_00126288 = '\x01';" (assignment_expression "DAT_00126288 = '\x01'" (identifier "DAT_00126288") (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (if_statement "if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103b4d,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }" (if "if") (parenthesized_expression "(DAT_00126014 == 0)" (( "(") (binary_expression "DAT_00126014 == 0" (identifier "DAT_00126014") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          FUN_001039a8(FUN_00103b4d,0);\n        }" ({ "{") (expression_statement "FUN_001039a8(FUN_00103b4d,0);" (call_expression "FUN_001039a8(FUN_00103b4d,0)" (identifier "FUN_001039a8") (argument_list "(FUN_00103b4d,0)" (( "(") (identifier "FUN_00103b4d") (, ",") (number_literal "0") () ")"))) (; ";")) (} "}")) (else_clause "else {\n          FUN_001039a8(FUN_00103bf9,0);\n        }" (else "else") (compound_statement "{\n          FUN_001039a8(FUN_00103bf9,0);\n        }" ({ "{") (expression_statement "FUN_001039a8(FUN_00103bf9,0);" (call_expression "FUN_001039a8(FUN_00103bf9,0)" (identifier "FUN_001039a8") (argument_list "(FUN_00103bf9,0)" (( "(") (identifier "FUN_00103bf9") (, ",") (number_literal "0") () ")"))) (; ";")) (} "}")))) (} "}")) (else_clause "else if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }" (else "else") (if_statement "if (local_cd4 == 2) {\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }" (if "if") (parenthesized_expression "(local_cd4 == 2)" (( "(") (binary_expression "local_cd4 == 2" (identifier "local_cd4") (== "==") (number_literal "2")) () ")")) (compound_statement "{\n        DAT_00126288 = '\x01';\n        if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }\n      }" ({ "{") (expression_statement "DAT_00126288 = '\x01';" (assignment_expression "DAT_00126288 = '\x01'" (identifier "DAT_00126288") (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (if_statement "if (DAT_00126014 == 0) {\n          FUN_001039a8(FUN_00103ba3,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }" (if "if") (parenthesized_expression "(DAT_00126014 == 0)" (( "(") (binary_expression "DAT_00126014 == 0" (identifier "DAT_00126014") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          FUN_001039a8(FUN_00103ba3,0);\n        }" ({ "{") (expression_statement "FUN_001039a8(FUN_00103ba3,0);" (call_expression "FUN_001039a8(FUN_00103ba3,0)" (identifier "FUN_001039a8") (argument_list "(FUN_00103ba3,0)" (( "(") (identifier "FUN_00103ba3") (, ",") (number_literal "0") () ")"))) (; ";")) (} "}")) (else_clause "else {\n          FUN_001039a8(FUN_00103c4f,0);\n        }" (else "else") (compound_statement "{\n          FUN_001039a8(FUN_00103c4f,0);\n        }" ({ "{") (expression_statement "FUN_001039a8(FUN_00103c4f,0);" (call_expression "FUN_001039a8(FUN_00103c4f,0)" (identifier "FUN_001039a8") (argument_list "(FUN_00103c4f,0)" (( "(") (identifier "FUN_00103c4f") (, ",") (number_literal "0") () ")"))) (; ";")) (} "}")))) (} "}"))))) (if_statement "if (local_cec != 0) {\n        FUN_001039a8(FUN_00103a70,&DAT_00126240);\n      }" (if "if") (parenthesized_expression "(local_cec != 0)" (( "(") (binary_expression "local_cec != 0" (identifier "local_cec") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        FUN_001039a8(FUN_00103a70,&DAT_00126240);\n      }" ({ "{") (expression_statement "FUN_001039a8(FUN_00103a70,&DAT_00126240);" (call_expression "FUN_001039a8(FUN_00103a70,&DAT_00126240)" (identifier "FUN_001039a8") (argument_list "(FUN_00103a70,&DAT_00126240)" (( "(") (identifier "FUN_00103a70") (, ",") (pointer_expression "&DAT_00126240" (& "&") (identifier "DAT_00126240")) () ")"))) (; ";")) (} "}"))) (if_statement "if (local_cb0 != 0) {\n        if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }\n      }" (if "if") (parenthesized_expression "(local_cb0 != 0)" (( "(") (binary_expression "local_cb0 != 0" (identifier "local_cb0") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }\n      }" ({ "{") (if_statement "if (DAT_00126289 == '\0') {\n          FUN_001039a8(FUN_001039fb,0);\n        }\n        else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }" (if "if") (parenthesized_expression "(DAT_00126289 == '\0')" (( "(") (binary_expression "DAT_00126289 == '\0'" (identifier "DAT_00126289") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n          FUN_001039a8(FUN_001039fb,0);\n        }" ({ "{") (expression_statement "FUN_001039a8(FUN_001039fb,0);" (call_expression "FUN_001039a8(FUN_001039fb,0)" (identifier "FUN_001039a8") (argument_list "(FUN_001039fb,0)" (( "(") (identifier "FUN_001039fb") (, ",") (number_literal "0") () ")"))) (; ";")) (} "}")) (else_clause "else {\n          FUN_001039a8(FUN_00103a2b,0);\n        }" (else "else") (compound_statement "{\n          FUN_001039a8(FUN_00103a2b,0);\n        }" ({ "{") (expression_statement "FUN_001039a8(FUN_00103a2b,0);" (call_expression "FUN_001039a8(FUN_00103a2b,0)" (identifier "FUN_001039a8") (argument_list "(FUN_00103a2b,0)" (( "(") (identifier "FUN_00103a2b") (, ",") (number_literal "0") () ")"))) (; ";")) (} "}")))) (} "}"))) (if_statement "if (local_cd8 == 0) {\n        FUN_001039a8(FUN_001038a4,&DAT_00126270);\n      }\n      else {\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }" (if "if") (parenthesized_expression "(local_cd8 == 0)" (( "(") (binary_expression "local_cd8 == 0" (identifier "local_cd8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        FUN_001039a8(FUN_001038a4,&DAT_00126270);\n      }" ({ "{") (expression_statement "FUN_001039a8(FUN_001038a4,&DAT_00126270);" (call_expression "FUN_001039a8(FUN_001038a4,&DAT_00126270)" (identifier "FUN_001039a8") (argument_list "(FUN_001038a4,&DAT_00126270)" (( "(") (identifier "FUN_001038a4") (, ",") (pointer_expression "&DAT_00126270" (& "&") (identifier "DAT_00126270")) () ")"))) (; ";")) (} "}")) (else_clause "else {\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }" (else "else") (compound_statement "{\n        FUN_001039a8(FUN_00103887,&DAT_00126270);\n      }" ({ "{") (expression_statement "FUN_001039a8(FUN_00103887,&DAT_00126270);" (call_expression "FUN_001039a8(FUN_00103887,&DAT_00126270)" (identifier "FUN_001039a8") (argument_list "(FUN_00103887,&DAT_00126270)" (( "(") (identifier "FUN_00103887") (, ",") (pointer_expression "&DAT_00126270" (& "&") (identifier "DAT_00126270")) () ")"))) (; ";")) (} "}")))) (expression_statement "pcVar1 = local_b98;" (assignment_expression "pcVar1 = local_b98" (identifier "pcVar1") (= "=") (identifier "local_b98")) (; ";")) (if_statement "if (iVar5 < 2) {\n        DAT_00126208 = FUN_00103755;\n      }\n      else {\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }" (if "if") (parenthesized_expression "(iVar5 < 2)" (( "(") (binary_expression "iVar5 < 2" (identifier "iVar5") (< "<") (number_literal "2")) () ")")) (compound_statement "{\n        DAT_00126208 = FUN_00103755;\n      }" ({ "{") (expression_statement "DAT_00126208 = FUN_00103755;" (assignment_expression "DAT_00126208 = FUN_00103755" (identifier "DAT_00126208") (= "=") (identifier "FUN_00103755")) (; ";")) (} "}")) (else_clause "else {\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }" (else "else") (compound_statement "{\n        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);\n        if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }\n      }" ({ "{") (expression_statement "DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);" (assignment_expression "DAT_00126210 = *(undefined8 *)(lVar10 + 0x10)" (identifier "DAT_00126210") (= "=") (pointer_expression "*(undefined8 *)(lVar10 + 0x10)" (* "*") (cast_expression "(undefined8 *)(lVar10 + 0x10)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar10 + 0x10)" (( "(") (binary_expression "lVar10 + 0x10" (identifier "lVar10") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (if_statement "if (local_c98 == 0) {\n          DAT_00126208 = FUN_0010378e;\n        }\n        else {\n          DAT_00126208 = FUN_0010380e;\n        }" (if "if") (parenthesized_expression "(local_c98 == 0)" (( "(") (binary_expression "local_c98 == 0" (identifier "local_c98") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          DAT_00126208 = FUN_0010378e;\n        }" ({ "{") (expression_statement "DAT_00126208 = FUN_0010378e;" (assignment_expression "DAT_00126208 = FUN_0010378e" (identifier "DAT_00126208") (= "=") (identifier "FUN_0010378e")) (; ";")) (} "}")) (else_clause "else {\n          DAT_00126208 = FUN_0010380e;\n        }" (else "else") (compound_statement "{\n          DAT_00126208 = FUN_0010380e;\n        }" ({ "{") (expression_statement "DAT_00126208 = FUN_0010380e;" (assignment_expression "DAT_00126208 = FUN_0010380e" (identifier "DAT_00126208") (= "=") (identifier "FUN_0010380e")) (; ";")) (} "}")))) (} "}")))) (if_statement "if (local_cec != 0) {\n        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar12,pcVar1,local_ca0);\n      }" (if "if") (parenthesized_expression "(local_cec != 0)" (( "(") (binary_expression "local_cec != 0" (identifier "local_cec") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);\n        __printf_chk(1,uVar12,pcVar1,local_ca0);\n      }" ({ "{") (expression_statement "uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"Database %s is in the %s format.\n",5)" (identifier "dcgettext") (argument_list "(0,"Database %s is in the %s format.\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Database %s is in the %s format.\n"" (" """) (string_content "Database %s is in the %s format.") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "__printf_chk(1,uVar12,pcVar1,local_ca0);" (call_expression "__printf_chk(1,uVar12,pcVar1,local_ca0)" (identifier "__printf_chk") (argument_list "(1,uVar12,pcVar1,local_ca0)" (( "(") (number_literal "1") (, ",") (identifier "uVar12") (, ",") (identifier "pcVar1") (, ",") (identifier "local_ca0") () ")"))) (; ";")) (} "}"))) (expression_statement "local_bc8[0] = getc(local_ba0);" (assignment_expression "local_bc8[0] = getc(local_ba0)" (subscript_expression "local_bc8[0]" (identifier "local_bc8") ([ "[") (number_literal "0") (] "]")) (= "=") (call_expression "getc(local_ba0)" (identifier "getc") (argument_list "(local_ba0)" (( "(") (identifier "local_ba0") () ")")))) (; ";")) (if_statement "if ((local_bc8[0] != -1) && (local_cac != 0)) {\n        ungetc(local_bc8[0],local_ba0);\n        local_bc8[0] = 0;\n      }" (if "if") (parenthesized_expression "((local_bc8[0] != -1) && (local_cac != 0))" (( "(") (binary_expression "(local_bc8[0] != -1) && (local_cac != 0)" (parenthesized_expression "(local_bc8[0] != -1)" (( "(") (binary_expression "local_bc8[0] != -1" (subscript_expression "local_bc8[0]" (identifier "local_bc8") ([ "[") (number_literal "0") (] "]")) (!= "!=") (number_literal "-1")) () ")")) (&& "&&") (parenthesized_expression "(local_cac != 0)" (( "(") (binary_expression "local_cac != 0" (identifier "local_cac") (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n        ungetc(local_bc8[0],local_ba0);\n        local_bc8[0] = 0;\n      }" ({ "{") (expression_statement "ungetc(local_bc8[0],local_ba0);" (call_expression "ungetc(local_bc8[0],local_ba0)" (identifier "ungetc") (argument_list "(local_bc8[0],local_ba0)" (( "(") (subscript_expression "local_bc8[0]" (identifier "local_bc8") ([ "[") (number_literal "0") (] "]")) (, ",") (identifier "local_ba0") () ")"))) (; ";")) (expression_statement "local_bc8[0] = 0;" (assignment_expression "local_bc8[0] = 0" (subscript_expression "local_bc8[0]" (identifier "local_bc8") ([ "[") (number_literal "0") (] "]")) (= "=") (number_literal "0")) (; ";")) (} "}"))) (do_statement "do {\n        if (local_bc8[0] == -1) break;\n        iVar3 = (*DAT_00126208)(local_bc8);\n      } while (iVar3 != 8);" (do "do") (compound_statement "{\n        if (local_bc8[0] == -1) break;\n        iVar3 = (*DAT_00126208)(local_bc8);\n      }" ({ "{") (if_statement "if (local_bc8[0] == -1) break;" (if "if") (parenthesized_expression "(local_bc8[0] == -1)" (( "(") (binary_expression "local_bc8[0] == -1" (subscript_expression "local_bc8[0]" (identifier "local_bc8") ([ "[") (number_literal "0") (] "]")) (== "==") (number_literal "-1")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar3 = (*DAT_00126208)(local_bc8);" (assignment_expression "iVar3 = (*DAT_00126208)(local_bc8)" (identifier "iVar3") (= "=") (call_expression "(*DAT_00126208)(local_bc8)" (parenthesized_expression "(*DAT_00126208)" (( "(") (pointer_expression "*DAT_00126208" (* "*") (identifier "DAT_00126208")) () ")")) (argument_list "(local_bc8)" (( "(") (identifier "local_bc8") () ")")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar3 != 8)" (( "(") (binary_expression "iVar3 != 8" (identifier "iVar3") (!= "!=") (number_literal "8")) () ")")) (; ";")) (if_statement "if (local_cec != 0) {\n        if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }\n        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }\n      }" (if "if") (parenthesized_expression "(local_cec != 0)" (( "(") (binary_expression "local_cec != 0" (identifier "local_cec") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }\n        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }\n      }" ({ "{") (if_statement "if (local_ca8 != 0) {\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }" (if "if") (parenthesized_expression "(local_ca8 != 0)" (( "(") (binary_expression "local_ca8 != 0" (identifier "local_ca8") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);\n          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);\n          if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }\n        }" ({ "{") (expression_statement "uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);" (assignment_expression "uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"The database has little-endian machine-word encoding.\n",5)" (identifier "dcgettext") (argument_list "(0,"The database has little-endian machine-word encoding.\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""The database has little-endian machine-word encoding.\n"" (" """) (string_content "The database has little-endian machine-word encoding.") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);" (assignment_expression "uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5)" (identifier "uVar16") (= "=") (call_expression "dcgettext(0,"The database has big-endian machine-word encoding.\n",5)" (identifier "dcgettext") (argument_list "(0,"The database has big-endian machine-word encoding.\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""The database has big-endian machine-word encoding.\n"" (" """) (string_content "The database has big-endian machine-word encoding.") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (if_statement "if (local_b90 == 1) {\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }\n          else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }" (if "if") (parenthesized_expression "(local_b90 == 1)" (( "(") (binary_expression "local_b90 == 1" (identifier "local_b90") (== "==") (number_literal "1")) () ")")) (compound_statement "{\n            __printf_chk(1,&DAT_001207c7,uVar12);\n          }" ({ "{") (expression_statement "__printf_chk(1,&DAT_001207c7,uVar12);" (call_expression "__printf_chk(1,&DAT_001207c7,uVar12)" (identifier "__printf_chk") (argument_list "(1,&DAT_001207c7,uVar12)" (( "(") (number_literal "1") (, ",") (pointer_expression "&DAT_001207c7" (& "&") (identifier "DAT_001207c7")) (, ",") (identifier "uVar12") () ")"))) (; ";")) (} "}")) (else_clause "else if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }" (else "else") (if_statement "if (local_b90 == 2) {\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }\n          else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }" (if "if") (parenthesized_expression "(local_b90 == 2)" (( "(") (binary_expression "local_b90 == 2" (identifier "local_b90") (== "==") (number_literal "2")) () ")")) (compound_statement "{\n            __printf_chk(1,&DAT_001207c7,uVar16);\n          }" ({ "{") (expression_statement "__printf_chk(1,&DAT_001207c7,uVar16);" (call_expression "__printf_chk(1,&DAT_001207c7,uVar16)" (identifier "__printf_chk") (argument_list "(1,&DAT_001207c7,uVar16)" (( "(") (number_literal "1") (, ",") (pointer_expression "&DAT_001207c7" (& "&") (identifier "DAT_001207c7")) (, ",") (identifier "uVar16") () ")"))) (; ";")) (} "}")) (else_clause "else {\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }" (else "else") (compound_statement "{\n            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);\n            __printf_chk(1,uVar12);\n          }" ({ "{") (expression_statement "uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);" (assignment_expression "uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"The database machine-word encoding order is not obvious.\n",5)" (identifier "dcgettext") (argument_list "(0,"The database machine-word encoding order is not obvious.\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""The database machine-word encoding order is not obvious.\n"" (" """) (string_content "The database machine-word encoding order is not obvious.") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "__printf_chk(1,uVar12);" (call_expression "__printf_chk(1,uVar12)" (identifier "__printf_chk") (argument_list "(1,uVar12)" (( "(") (number_literal "1") (, ",") (identifier "uVar12") () ")"))) (; ";")) (} "}")))))) (} "}"))) (if_statement "if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }" (if "if") (parenthesized_expression "(local_cc0 != (time_t *)0x0 || local_cb8 != 0)" (( "(") (binary_expression "local_cc0 != (time_t *)0x0 || local_cb8 != 0" (binary_expression "local_cc0 != (time_t *)0x0" (identifier "local_cc0") (!= "!=") (cast_expression "(time_t *)0x0" (( "(") (type_descriptor "time_t *" (type_identifier "time_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (|| "||") (binary_expression "local_cb8 != 0" (identifier "local_cb8") (!= "!=") (number_literal "0"))) () ")")) (compound_statement "{\n          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }\n          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);\n          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);\n          if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }\n          __printf_chk(1,uVar16,uVar12);\n          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);\n          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);\n          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);\n          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);\n          uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);\n          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);\n          if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }\n          putchar(10);\n        }" ({ "{") (if_statement "if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }" (if "if") (parenthesized_expression "((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0))" (( "(") (binary_expression "(local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)" (parenthesized_expression "(local_cc0 != (time_t *)0x0)" (( "(") (binary_expression "local_cc0 != (time_t *)0x0" (identifier "local_cc0") (!= "!=") (cast_expression "(time_t *)0x0" (( "(") (type_descriptor "time_t *" (type_identifier "time_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (&& "&&") (parenthesized_expression "(__tp = localtime(local_cc0), __tp != (tm *)0x0)" (( "(") (comma_expression "__tp = localtime(local_cc0), __tp != (tm *)0x0" (assignment_expression "__tp = localtime(local_cc0)" (identifier "__tp") (= "=") (call_expression "localtime(local_cc0)" (identifier "localtime") (argument_list "(local_cc0)" (( "(") (identifier "local_cc0") () ")")))) (, ",") (binary_expression "__tp != (tm *)0x0" (identifier "__tp") (!= "!=") (cast_expression "(tm *)0x0" (( "(") (type_descriptor "tm *" (type_identifier "tm") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")))) () ")"))) () ")")) (compound_statement "{\n            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);\n            if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }\n            if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }\n            if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }\n            tVar7 = local_cc0[1];\n            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);\n            __printf_chk(1,uVar12,local_2d8,tVar7);\n            sVar14 = strftime(local_2d8,0x14,"%z",__tp);\n            if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }\n            __printf_chk(1," %s\n",local_2d8);\n          }" ({ "{") (expression_statement "sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);" (assignment_expression "sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp)" (identifier "sVar14") (= "=") (call_expression "strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp)" (identifier "strftime") (argument_list "(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp)" (( "(") (identifier "local_2d8") (, ",") (number_literal "0x14") (, ",") (string_literal ""%Y:%m:%d %H:%M:%S"" (" """) (string_content "%Y:%m:%d %H:%M:%S") (" """)) (, ",") (identifier "__tp") () ")")))) (; ";")) (if_statement "if (sVar14 != 0x13) {\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }" (if "if") (parenthesized_expression "(sVar14 != 0x13)" (( "(") (binary_expression "sVar14 != 0x13" (identifier "sVar14") (!= "!=") (number_literal "0x13")) () ")")) (compound_statement "{\n                    \n              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");\n            }" ({ "{") (expression_statement "__assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");" (call_expression "__assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats")" (identifier "__assert_fail") (argument_list "("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats")" (( "(") (string_literal ""printed == TIME_BUF_LEN-1"" (" """) (string_content "printed == TIME_BUF_LEN-1") (" """)) (, ",") (string_literal ""locate.c"" (" """) (string_content "locate.c") (" """)) (, ",") (number_literal "0x34b") (, ",") (string_literal ""print_stats"" (" """) (string_content "print_stats") (" """)) () ")"))) (; ";")) (} "}"))) (if_statement "if (local_2c5 != '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }" (if "if") (parenthesized_expression "(local_2c5 != '\0')" (( "(") (binary_expression "local_2c5 != '\0'" (identifier "local_2c5") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");\n            }" ({ "{") (expression_statement "__assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");" (call_expression "__assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats")" (identifier "__assert_fail") (argument_list "("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats")" (( "(") (string_literal ""whenbuf[TIME_BUF_LEN-1] == 0"" (" """) (string_content "whenbuf[TIME_BUF_LEN-1] == 0") (" """)) (, ",") (string_literal ""locate.c"" (" """) (string_content "locate.c") (" """)) (, ",") (number_literal "0x34c") (, ",") (string_literal ""print_stats"" (" """) (string_content "print_stats") (" """)) () ")"))) (; ";")) (} "}"))) (if_statement "if (local_2c6 == '\0') {\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }" (if "if") (parenthesized_expression "(local_2c6 == '\0')" (( "(") (binary_expression "local_2c6 == '\0'" (identifier "local_2c6") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                    \n              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");\n            }" ({ "{") (expression_statement "__assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");" (call_expression "__assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats")" (identifier "__assert_fail") (argument_list "("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats")" (( "(") (string_literal ""whenbuf[TIME_BUF_LEN-2] != 0"" (" """) (string_content "whenbuf[TIME_BUF_LEN-2] != 0") (" """)) (, ",") (string_literal ""locate.c"" (" """) (string_content "locate.c") (" """)) (, ",") (number_literal "0x34d") (, ",") (string_literal ""print_stats"" (" """) (string_content "print_stats") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "tVar7 = local_cc0[1];" (assignment_expression "tVar7 = local_cc0[1]" (identifier "tVar7") (= "=") (subscript_expression "local_cc0[1]" (identifier "local_cc0") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);" (assignment_expression "uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"Database was last modified at %s.%09ld",5)" (identifier "dcgettext") (argument_list "(0,"Database was last modified at %s.%09ld",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Database was last modified at %s.%09ld"" (" """) (string_content "Database was last modified at %s.%09ld") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "__printf_chk(1,uVar12,local_2d8,tVar7);" (call_expression "__printf_chk(1,uVar12,local_2d8,tVar7)" (identifier "__printf_chk") (argument_list "(1,uVar12,local_2d8,tVar7)" (( "(") (number_literal "1") (, ",") (identifier "uVar12") (, ",") (identifier "local_2d8") (, ",") (identifier "tVar7") () ")"))) (; ";")) (expression_statement "sVar14 = strftime(local_2d8,0x14,"%z",__tp);" (assignment_expression "sVar14 = strftime(local_2d8,0x14,"%z",__tp)" (identifier "sVar14") (= "=") (call_expression "strftime(local_2d8,0x14,"%z",__tp)" (identifier "strftime") (argument_list "(local_2d8,0x14,"%z",__tp)" (( "(") (identifier "local_2d8") (, ",") (number_literal "0x14") (, ",") (string_literal ""%z"" (" """) (string_content "%z") (" """)) (, ",") (identifier "__tp") () ")")))) (; ";")) (if_statement "if (sVar14 != 5) {\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }" (if "if") (parenthesized_expression "(sVar14 != 5)" (( "(") (binary_expression "sVar14 != 5" (identifier "sVar14") (!= "!=") (number_literal "5")) () ")")) (compound_statement "{\n                    \n              __assert_fail("printed == 5","locate.c",0x351,"print_stats");\n            }" ({ "{") (expression_statement "__assert_fail("printed == 5","locate.c",0x351,"print_stats");" (call_expression "__assert_fail("printed == 5","locate.c",0x351,"print_stats")" (identifier "__assert_fail") (argument_list "("printed == 5","locate.c",0x351,"print_stats")" (( "(") (string_literal ""printed == 5"" (" """) (string_content "printed == 5") (" """)) (, ",") (string_literal ""locate.c"" (" """) (string_content "locate.c") (" """)) (, ",") (number_literal "0x351") (, ",") (string_literal ""print_stats"" (" """) (string_content "print_stats") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "__printf_chk(1," %s\n",local_2d8);" (call_expression "__printf_chk(1," %s\n",local_2d8)" (identifier "__printf_chk") (argument_list "(1," %s\n",local_2d8)" (( "(") (number_literal "1") (, ",") (string_literal "" %s\n"" (" """) (string_content " %s") (escape_sequence "\n") (" """)) (, ",") (identifier "local_2d8") () ")"))) (; ";")) (} "}"))) (expression_statement "uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);" (assignment_expression "uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1)" (identifier "uVar12") (= "=") (call_expression "FUN_0010670e(local_cb8,local_a88,0,1,1)" (identifier "FUN_0010670e") (argument_list "(local_cb8,local_a88,0,1,1)" (( "(") (identifier "local_cb8") (, ",") (identifier "local_a88") (, ",") (number_literal "0") (, ",") (number_literal "1") (, ",") (number_literal "1") () ")")))) (; ";")) (expression_statement "uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5);" (assignment_expression "uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5)" (identifier "uVar16") (= "=") (call_expression "dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5)" (identifier "dcngettext") (argument_list "(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"\n                              ,local_cb8,5)" (( "(") (number_literal "0") (, ",") (string_literal ""Locate database size: %s byte\n"" (" """) (string_content "Locate database size: %s byte") (escape_sequence "\n") (" """)) (, ",") (string_literal ""Locate database size: %s bytes\n"" (" """) (string_content "Locate database size: %s bytes") (escape_sequence "\n") (" """)) (, ",") (identifier "local_cb8") (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "__printf_chk(1,uVar16,uVar12);" (call_expression "__printf_chk(1,uVar16,uVar12)" (identifier "__printf_chk") (argument_list "(1,uVar16,uVar12)" (( "(") (number_literal "1") (, ",") (identifier "uVar16") (, ",") (identifier "uVar12") () ")"))) (; ";")) (expression_statement "uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);" (assignment_expression "uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1)" (identifier "uVar12") (= "=") (call_expression "FUN_0010670e(DAT_00126248,local_a88,0,1,1)" (identifier "FUN_0010670e") (argument_list "(DAT_00126248,local_a88,0,1,1)" (( "(") (identifier "DAT_00126248") (, ",") (identifier "local_a88") (, ",") (number_literal "0") (, ",") (number_literal "1") (, ",") (number_literal "1") () ")")))) (; ";")) (if_statement "if (DAT_00126288 == '\0') {\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }\n          else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }" (if "if") (parenthesized_expression "(DAT_00126288 == '\0')" (( "(") (binary_expression "DAT_00126288 == '\0'" (identifier "DAT_00126288") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n            uVar16 = dcgettext(0,"All Filenames: %s\n",5);\n          }" ({ "{") (expression_statement "uVar16 = dcgettext(0,"All Filenames: %s\n",5);" (assignment_expression "uVar16 = dcgettext(0,"All Filenames: %s\n",5)" (identifier "uVar16") (= "=") (call_expression "dcgettext(0,"All Filenames: %s\n",5)" (identifier "dcgettext") (argument_list "(0,"All Filenames: %s\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""All Filenames: %s\n"" (" """) (string_content "All Filenames: %s") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (} "}")) (else_clause "else {\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }" (else "else") (compound_statement "{\n            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);\n          }" ({ "{") (expression_statement "uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);" (assignment_expression "uVar16 = dcgettext(0,"Matching Filenames: %s\n",5)" (identifier "uVar16") (= "=") (call_expression "dcgettext(0,"Matching Filenames: %s\n",5)" (identifier "dcgettext") (argument_list "(0,"Matching Filenames: %s\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Matching Filenames: %s\n"" (" """) (string_content "Matching Filenames: %s") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (} "}")))) (expression_statement "__printf_chk(1,uVar16,uVar12);" (call_expression "__printf_chk(1,uVar16,uVar12)" (identifier "__printf_chk") (argument_list "(1,uVar16,uVar12)" (( "(") (number_literal "1") (, ",") (identifier "uVar16") (, ",") (identifier "uVar12") () ")"))) (; ";")) (expression_statement "uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);" (assignment_expression "uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1)" (identifier "uVar12") (= "=") (call_expression "FUN_0010670e(DAT_00126268,local_2d8,0,1,1)" (identifier "FUN_0010670e") (argument_list "(DAT_00126268,local_2d8,0,1,1)" (( "(") (identifier "DAT_00126268") (, ",") (identifier "local_2d8") (, ",") (number_literal "0") (, ",") (number_literal "1") (, ",") (number_literal "1") () ")")))) (; ";")) (expression_statement "uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);" (assignment_expression "uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1)" (identifier "uVar16") (= "=") (call_expression "FUN_0010670e(DAT_00126260,local_568,0,1,1)" (identifier "FUN_0010670e") (argument_list "(DAT_00126260,local_568,0,1,1)" (( "(") (identifier "DAT_00126260") (, ",") (identifier "local_568") (, ",") (number_literal "0") (, ",") (number_literal "1") (, ",") (number_literal "1") () ")")))) (; ";")) (expression_statement "uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);" (assignment_expression "uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1)" (identifier "uVar17") (= "=") (call_expression "FUN_0010670e(DAT_00126258,local_7f8,0,1,1)" (identifier "FUN_0010670e") (argument_list "(DAT_00126258,local_7f8,0,1,1)" (( "(") (identifier "DAT_00126258") (, ",") (identifier "local_7f8") (, ",") (number_literal "0") (, ",") (number_literal "1") (, ",") (number_literal "1") () ")")))) (; ";")) (expression_statement "uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);" (assignment_expression "uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1)" (identifier "uVar18") (= "=") (call_expression "FUN_0010670e(DAT_00126250,local_a88,0,1,1)" (identifier "FUN_0010670e") (argument_list "(DAT_00126250,local_a88,0,1,1)" (( "(") (identifier "DAT_00126250") (, ",") (identifier "local_a88") (, ",") (number_literal "0") (, ",") (number_literal "1") (, ",") (number_literal "1") () ")")))) (; ";")) (expression_statement "uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5);" (assignment_expression "uVar19 = dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5)" (identifier "uVar19") (= "=") (call_expression "dcgettext(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5)" (identifier "dcgettext") (argument_list "(0,\n                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"\n                             ,5)" (( "(") (number_literal "0") (, ",") (string_literal ""File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"" (" """) (string_content "File names have a cumulative length of %s bytes.") (escape_sequence "\n") (string_content "Of those file names,") (escape_sequence "\n") (escape_sequence "\n") (escape_sequence "\t") (string_content "%s contain whitespace, ") (escape_sequence "\n") (escape_sequence "\t") (string_content "%s contain newline characters, ") (escape_sequence "\n") (escape_sequence "\t") (string_content "and %s contain characters with the high bit set.") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "__printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);" (call_expression "__printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12)" (identifier "__printf_chk") (argument_list "(1,uVar19,uVar18,uVar17,uVar16,uVar12)" (( "(") (number_literal "1") (, ",") (identifier "uVar19") (, ",") (identifier "uVar18") (, ",") (identifier "uVar17") (, ",") (identifier "uVar16") (, ",") (identifier "uVar12") () ")"))) (; ";")) (if_statement "if (iVar5 == 0) {\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }" (if "if") (parenthesized_expression "(iVar5 == 0)" (( "(") (binary_expression "iVar5 == 0" (identifier "iVar5") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }\n          }" ({ "{") (if_statement "if (DAT_00126288 == '\0') {\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }\n            else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }" (if "if") (parenthesized_expression "(DAT_00126288 == '\0')" (( "(") (binary_expression "DAT_00126288 == '\0'" (identifier "DAT_00126288") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n              if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }\n            }" ({ "{") (if_statement "if (DAT_00126250 == 0) {\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }\n              else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }" (if "if") (parenthesized_expression "(DAT_00126250 == 0)" (( "(") (binary_expression "DAT_00126250 == 0" (identifier "DAT_00126250") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);\n                __printf_chk(1,uVar12);\n              }" ({ "{") (expression_statement "uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Compression ratio is undefined\n",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"Compression ratio is undefined\n",5)" (identifier "dcgettext") (argument_list "(0,"Compression ratio is undefined\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Compression ratio is undefined\n"" (" """) (string_content "Compression ratio is undefined") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "__printf_chk(1,uVar12);" (call_expression "__printf_chk(1,uVar12)" (identifier "__printf_chk") (argument_list "(1,uVar12)" (( "(") (number_literal "1") (, ",") (identifier "uVar12") () ")"))) (; ";")) (} "}")) (else_clause "else {\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }" (else "else") (compound_statement "{\n                local_ce8 = (double)DAT_00126250;\n                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);\n                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;\n              }" ({ "{") (expression_statement "local_ce8 = (double)DAT_00126250;" (assignment_expression "local_ce8 = (double)DAT_00126250" (identifier "local_ce8") (= "=") (cast_expression "(double)DAT_00126250" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (identifier "DAT_00126250"))) (; ";")) (expression_statement "uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5)" (identifier "dcgettext") (argument_list "(0,"Compression ratio %4.2f%% (higher is better)\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Compression ratio %4.2f%% (higher is better)\n"" (" """) (string_content "Compression ratio %4.2f%% (higher is better)") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "__printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)\n                ;" (call_expression "__printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)" (identifier "__printf_chk") (argument_list "(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)" (( "(") (binary_expression "((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8" (parenthesized_expression "((local_ce8 - (double)local_cb8) * _DAT_0011eda0)" (( "(") (binary_expression "(local_ce8 - (double)local_cb8) * _DAT_0011eda0" (parenthesized_expression "(local_ce8 - (double)local_cb8)" (( "(") (binary_expression "local_ce8 - (double)local_cb8" (identifier "local_ce8") (- "-") (cast_expression "(double)local_cb8" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (identifier "local_cb8"))) () ")")) (* "*") (identifier "_DAT_0011eda0")) () ")")) (/ "/") (identifier "local_ce8")) (, ",") (number_literal "1") (, ",") (identifier "uVar12") () ")"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }" (else "else") (compound_statement "{\n              uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);\n              __printf_chk(1,uVar12);\n            }" ({ "{") (expression_statement "uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5);" (assignment_expression "uVar12 = dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5)" (identifier "dcgettext") (argument_list "(0,\n                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"\n                                 ,5)" (( "(") (number_literal "0") (, ",") (string_literal ""Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"" (" """) (string_content "Some filenames may have been filtered out, so we cannot compute the compression ratio.") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "__printf_chk(1,uVar12);" (call_expression "__printf_chk(1,uVar12)" (identifier "__printf_chk") (argument_list "(1,uVar12)" (( "(") (number_literal "1") (, ",") (identifier "uVar12") () ")"))) (; ";")) (} "}")))) (} "}"))) (expression_statement "putchar(10);" (call_expression "putchar(10)" (identifier "putchar") (argument_list "(10)" (( "(") (number_literal "10") () ")"))) (; ";")) (} "}"))) (} "}"))) (expression_statement "iVar3 = ferror(local_ba0);" (assignment_expression "iVar3 = ferror(local_ba0)" (identifier "iVar3") (= "=") (call_expression "ferror(local_ba0)" (identifier "ferror") (argument_list "(local_ba0)" (( "(") (identifier "local_ba0") () ")")))) (; ";")) (expression_statement "uVar6 = DAT_00126278;" (assignment_expression "uVar6 = DAT_00126278" (identifier "uVar6") (= "=") (identifier "DAT_00126278")) (; ";")) (if_statement "if (iVar3 != 0) {\n        uVar12 = FUN_0010ca58(0,8,local_b98);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        uVar6 = 0;\n      }" (if "if") (parenthesized_expression "(iVar3 != 0)" (( "(") (binary_expression "iVar3 != 0" (identifier "iVar3") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        uVar12 = FUN_0010ca58(0,8,local_b98);\n        piVar13 = __errno_location();\n        error(0,*piVar13,&DAT_001207c7,uVar12);\n        uVar6 = 0;\n      }" ({ "{") (expression_statement "uVar12 = FUN_0010ca58(0,8,local_b98);" (assignment_expression "uVar12 = FUN_0010ca58(0,8,local_b98)" (identifier "uVar12") (= "=") (call_expression "FUN_0010ca58(0,8,local_b98)" (identifier "FUN_0010ca58") (argument_list "(0,8,local_b98)" (( "(") (number_literal "0") (, ",") (number_literal "8") (, ",") (identifier "local_b98") () ")")))) (; ";")) (expression_statement "piVar13 = __errno_location();" (assignment_expression "piVar13 = __errno_location()" (identifier "piVar13") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "error(0,*piVar13,&DAT_001207c7,uVar12);" (call_expression "error(0,*piVar13,&DAT_001207c7,uVar12)" (identifier "error") (argument_list "(0,*piVar13,&DAT_001207c7,uVar12)" (( "(") (number_literal "0") (, ",") (pointer_expression "*piVar13" (* "*") (identifier "piVar13")) (, ",") (pointer_expression "&DAT_001207c7" (& "&") (identifier "DAT_001207c7")) (, ",") (identifier "uVar12") () ")"))) (; ";")) (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" (identifier "uVar6") (= "=") (number_literal "0")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n      ppuVar15 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar23 = (char)*pbVar8 + -0x30;\n      if (iVar23 < 2) {\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar16,uVar12,0);\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar16,uVar12,iVar23);\n      uVar6 = 0;\n    }" (else "else") (compound_statement "{\n      ppuVar15 = __ctype_b_loc();\n      if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;\n      iVar23 = (char)*pbVar8 + -0x30;\n      if (iVar23 < 2) {\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);\n      error(0,0,uVar16,uVar12,0);\n      uVar12 = FUN_0010ca58(0,8,local_b98);\n      uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);\n      error(0,0,uVar16,uVar12,iVar23);\n      uVar6 = 0;\n    }" ({ "{") (expression_statement "ppuVar15 = __ctype_b_loc();" (assignment_expression "ppuVar15 = __ctype_b_loc()" (identifier "ppuVar15") (= "=") (call_expression "__ctype_b_loc()" (identifier "__ctype_b_loc") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;" (if "if") (parenthesized_expression "((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0)" (( "(") (binary_expression "(*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0" (parenthesized_expression "(*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8)" (( "(") (binary_expression "*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8" (pointer_expression "*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1)" (* "*") (cast_expression "(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1)" (( "(") (binary_expression "(long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1" (binary_expression "(long)*ppuVar15 + (ulong)*pbVar8 * 2" (cast_expression "(long)*ppuVar15" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (pointer_expression "*ppuVar15" (* "*") (identifier "ppuVar15"))) (+ "+") (binary_expression "(ulong)*pbVar8 * 2" (binary_expression "(ulong)*pbVar8" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (* "*") (identifier "pbVar8")) (* "*") (number_literal "2"))) (+ "+") (number_literal "1")) () ")")))) (& "&") (number_literal "8")) () ")")) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00105aa4;" (goto "goto") (statement_identifier "LAB_00105aa4") (; ";"))) (expression_statement "iVar23 = (char)*pbVar8 + -0x30;" (assignment_expression "iVar23 = (char)*pbVar8 + -0x30" (identifier "iVar23") (= "=") (binary_expression "(char)*pbVar8 + -0x30" (cast_expression "(char)*pbVar8" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (pointer_expression "*pbVar8" (* "*") (identifier "pbVar8"))) (+ "+") (number_literal "-0x30"))) (; ";")) (if_statement "if (iVar23 < 2) {\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }" (if "if") (parenthesized_expression "(iVar23 < 2)" (( "(") (binary_expression "iVar23 < 2" (identifier "iVar23") (< "<") (number_literal "2")) () ")")) (compound_statement "{\n        if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }\n        FUN_001039a8(FUN_00103e3d,0);\n        local_ca8 = local_cc8;\n        local_ca0 = "slocate";\n        local_cac = 1;\n        goto LAB_0010543a;\n      }" ({ "{") (if_statement "if (iVar23 == 1) {\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }" (if "if") (parenthesized_expression "(iVar23 == 1)" (( "(") (binary_expression "iVar23 == 1" (identifier "iVar23") (== "==") (number_literal "1")) () ")")) (compound_statement "{\n          if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }\n          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }\n        }" ({ "{") (if_statement "if (DAT_00126200 == 2) {\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }" (if "if") (parenthesized_expression "(DAT_00126200 == 2)" (( "(") (binary_expression "DAT_00126200 == 2" (identifier "DAT_00126200") (== "==") (number_literal "2")) () ")")) (compound_statement "{\n            uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);\n            error(0,0,uVar12);\n            uVar6 = 0;\n            goto LAB_0010514b;\n          }" ({ "{") (expression_statement "uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5);" (assignment_expression "uVar12 = dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5)" (identifier "dcgettext") (argument_list "(0,\n                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"\n                               ,5)" (( "(") (number_literal "0") (, ",") (string_literal ""You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"" (" """) (string_content "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "error(0,0,uVar12);" (call_expression "error(0,0,uVar12)" (identifier "error") (argument_list "(0,0,uVar12)" (( "(") (number_literal "0") (, ",") (number_literal "0") (, ",") (identifier "uVar12") () ")"))) (; ";")) (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" (identifier "uVar6") (= "=") (number_literal "0")) (; ";")) (goto_statement "goto LAB_0010514b;" (goto "goto") (statement_identifier "LAB_0010514b") (; ";")) (} "}"))) (if_statement "if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }" (if "if") (parenthesized_expression "((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0))" (( "(") (binary_expression "(iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)" (parenthesized_expression "(iVar3 != 1)" (( "(") (binary_expression "iVar3 != 1" (identifier "iVar3") (!= "!=") (number_literal "1")) () ")")) (&& "&&") (parenthesized_expression "(local_cd4 = 1, local_cb0 != 0 || local_cec != 0)" (( "(") (comma_expression "local_cd4 = 1, local_cb0 != 0 || local_cec != 0" (assignment_expression "local_cd4 = 1" (identifier "local_cd4") (= "=") (number_literal "1")) (, ",") (binary_expression "local_cb0 != 0 || local_cec != 0" (binary_expression "local_cb0 != 0" (identifier "local_cb0") (!= "!=") (number_literal "0")) (|| "||") (binary_expression "local_cec != 0" (identifier "local_cec") (!= "!=") (number_literal "0")))) () ")"))) () ")")) (compound_statement "{\n            uVar12 = FUN_0010ca58(0,8,local_b98);\n            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);\n            error(0,0,uVar16,uVar12);\n            local_cd4 = 1;\n          }" ({ "{") (expression_statement "uVar12 = FUN_0010ca58(0,8,local_b98);" (assignment_expression "uVar12 = FUN_0010ca58(0,8,local_b98)" (identifier "uVar12") (= "=") (call_expression "FUN_0010ca58(0,8,local_b98)" (identifier "FUN_0010ca58") (argument_list "(0,8,local_b98)" (( "(") (number_literal "0") (, ",") (number_literal "8") (, ",") (identifier "local_b98") () ")")))) (; ";")) (expression_statement "uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);" (assignment_expression "uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5)" (identifier "uVar16") (= "=") (call_expression "dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5)" (identifier "dcgettext") (argument_list "(0,"%s is an slocate database.  Turning on the \'-e\' option.",5)" (( "(") (number_literal "0") (, ",") (string_literal ""%s is an slocate database.  Turning on the \'-e\' option."" (" """) (string_content "%s is an slocate database.  Turning on the ") (escape_sequence "\'") (string_content "-e") (escape_sequence "\'") (string_content " option.") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "error(0,0,uVar16,uVar12);" (call_expression "error(0,0,uVar16,uVar12)" (identifier "error") (argument_list "(0,0,uVar16,uVar12)" (( "(") (number_literal "0") (, ",") (number_literal "0") (, ",") (identifier "uVar16") (, ",") (identifier "uVar12") () ")"))) (; ";")) (expression_statement "local_cd4 = 1;" (assignment_expression "local_cd4 = 1" (identifier "local_cd4") (= "=") (number_literal "1")) (; ";")) (} "}"))) (} "}"))) (expression_statement "FUN_001039a8(FUN_00103e3d,0);" (call_expression "FUN_001039a8(FUN_00103e3d,0)" (identifier "FUN_001039a8") (argument_list "(FUN_00103e3d,0)" (( "(") (identifier "FUN_00103e3d") (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "local_ca8 = local_cc8;" (assignment_expression "local_ca8 = local_cc8" (identifier "local_ca8") (= "=") (identifier "local_cc8")) (; ";")) (expression_statement "local_ca0 = "slocate";" (assignment_expression "local_ca0 = "slocate"" (identifier "local_ca0") (= "=") (string_literal ""slocate"" (" """) (string_content "slocate") (" """))) (; ";")) (expression_statement "local_cac = 1;" (assignment_expression "local_cac = 1" (identifier "local_cac") (= "=") (number_literal "1")) (; ";")) (goto_statement "goto LAB_0010543a;" (goto "goto") (statement_identifier "LAB_0010543a") (; ";")) (} "}"))) (expression_statement "uVar12 = FUN_0010ca58(0,8,local_b98);" (assignment_expression "uVar12 = FUN_0010ca58(0,8,local_b98)" (identifier "uVar12") (= "=") (call_expression "FUN_0010ca58(0,8,local_b98)" (identifier "FUN_0010ca58") (argument_list "(0,8,local_b98)" (( "(") (number_literal "0") (, ",") (number_literal "8") (, ",") (identifier "local_b98") () ")")))) (; ";")) (expression_statement "uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5);" (assignment_expression "uVar16 = dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5)" (identifier "uVar16") (= "=") (call_expression "dcgettext(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5)" (identifier "dcgettext") (argument_list "(0,\n                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"\n                         ,5)" (( "(") (number_literal "0") (, ",") (string_literal ""locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"" (" """) (string_content "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "error(0,0,uVar16,uVar12,0);" (call_expression "error(0,0,uVar16,uVar12,0)" (identifier "error") (argument_list "(0,0,uVar16,uVar12,0)" (( "(") (number_literal "0") (, ",") (number_literal "0") (, ",") (identifier "uVar16") (, ",") (identifier "uVar12") (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "uVar12 = FUN_0010ca58(0,8,local_b98);" (assignment_expression "uVar12 = FUN_0010ca58(0,8,local_b98)" (identifier "uVar12") (= "=") (call_expression "FUN_0010ca58(0,8,local_b98)" (identifier "FUN_0010ca58") (argument_list "(0,8,local_b98)" (( "(") (number_literal "0") (, ",") (number_literal "8") (, ",") (identifier "local_b98") () ")")))) (; ";")) (expression_statement "uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5);" (assignment_expression "uVar16 = dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5)" (identifier "uVar16") (= "=") (call_expression "dcgettext(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5)" (identifier "dcgettext") (argument_list "(0,\n                         "%s is an slocate database of unsupported security level %d; skipping it.",\n                         5)" (( "(") (number_literal "0") (, ",") (string_literal ""%s is an slocate database of unsupported security level %d; skipping it."" (" """) (string_content "%s is an slocate database of unsupported security level %d; skipping it.") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "error(0,0,uVar16,uVar12,iVar23);" (call_expression "error(0,0,uVar16,uVar12,iVar23)" (identifier "error") (argument_list "(0,0,uVar16,uVar12,iVar23)" (( "(") (number_literal "0") (, ",") (number_literal "0") (, ",") (identifier "uVar16") (, ",") (identifier "uVar12") (, ",") (identifier "iVar23") () ")"))) (; ";")) (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" (identifier "uVar6") (= "=") (number_literal "0")) (; ";")) (} "}")))) (labeled_statement "LAB_0010514b:\n    iVar3 = fclose(local_ce0);" (statement_identifier "LAB_0010514b") (: ":") (expression_statement "iVar3 = fclose(local_ce0);" (assignment_expression "iVar3 = fclose(local_ce0)" (identifier "iVar3") (= "=") (call_expression "fclose(local_ce0)" (identifier "fclose") (argument_list "(local_ce0)" (( "(") (identifier "local_ce0") () ")")))) (; ";"))) (if_statement "if (iVar3 == -1) {\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      goto LAB_0010468d;\n    }" (if "if") (parenthesized_expression "(iVar3 == -1)" (( "(") (binary_expression "iVar3 == -1" (identifier "iVar3") (== "==") (number_literal "-1")) () ")")) (compound_statement "{\n      uVar12 = FUN_0010ca58(0,8,local_cf8);\n      piVar13 = __errno_location();\n      error(0,*piVar13,&DAT_001207c7,uVar12);\n      goto LAB_0010468d;\n    }" ({ "{") (expression_statement "uVar12 = FUN_0010ca58(0,8,local_cf8);" (assignment_expression "uVar12 = FUN_0010ca58(0,8,local_cf8)" (identifier "uVar12") (= "=") (call_expression "FUN_0010ca58(0,8,local_cf8)" (identifier "FUN_0010ca58") (argument_list "(0,8,local_cf8)" (( "(") (number_literal "0") (, ",") (number_literal "8") (, ",") (identifier "local_cf8") () ")")))) (; ";")) (expression_statement "piVar13 = __errno_location();" (assignment_expression "piVar13 = __errno_location()" (identifier "piVar13") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "error(0,*piVar13,&DAT_001207c7,uVar12);" (call_expression "error(0,*piVar13,&DAT_001207c7,uVar12)" (identifier "error") (argument_list "(0,*piVar13,&DAT_001207c7,uVar12)" (( "(") (number_literal "0") (, ",") (pointer_expression "*piVar13" (* "*") (identifier "piVar13")) (, ",") (pointer_expression "&DAT_001207c7" (& "&") (identifier "DAT_001207c7")) (, ",") (identifier "uVar12") () ")"))) (; ";")) (goto_statement "goto LAB_0010468d;" (goto "goto") (statement_identifier "LAB_0010468d") (; ";")) (} "}"))) (if_statement "if (local_cd0 != (char *)0x0) {\n      free(local_cd0);\n    }" (if "if") (parenthesized_expression "(local_cd0 != (char *)0x0)" (( "(") (binary_expression "local_cd0 != (char *)0x0" (identifier "local_cd0") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      free(local_cd0);\n    }" ({ "{") (expression_statement "free(local_cd0);" (call_expression "free(local_cd0)" (identifier "free") (argument_list "(local_cd0)" (( "(") (identifier "local_cd0") () ")"))) (; ";")) (} "}"))) (if_statement "if ((local_d00 == (char *)0x0) ||\n       (cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0')) break;" (if "if") (parenthesized_expression "((local_d00 == (char *)0x0) ||\n       (cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0'))" (( "(") (binary_expression "(local_d00 == (char *)0x0) ||\n       (cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0')" (parenthesized_expression "(local_d00 == (char *)0x0)" (( "(") (binary_expression "local_d00 == (char *)0x0" (identifier "local_d00") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (|| "||") (parenthesized_expression "(cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0')" (( "(") (comma_expression "cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0'" (assignment_expression "cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78)" (identifier "cVar2") (= "=") (call_expression "FUN_001063f9(local_d00,":",0,&local_c80,&local_c78)" (identifier "FUN_001063f9") (argument_list "(local_d00,":",0,&local_c80,&local_c78)" (( "(") (identifier "local_d00") (, ",") (string_literal "":"" (" """) (string_content ":") (" """)) (, ",") (number_literal "0") (, ",") (pointer_expression "&local_c80" (& "&") (identifier "local_c80")) (, ",") (pointer_expression "&local_c78" (& "&") (identifier "local_c78")) () ")")))) (, ",") (binary_expression "cVar2 == '\0'" (identifier "cVar2") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'")))) () ")"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (} "}"))) (if_statement "if (local_c94 != 0) {\n    __printf_chk(1,&DAT_0011ea67,uVar6);\n  }" (if "if") (parenthesized_expression "(local_c94 != 0)" (( "(") (binary_expression "local_c94 != 0" (identifier "local_c94") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    __printf_chk(1,&DAT_0011ea67,uVar6);\n  }" ({ "{") (expression_statement "__printf_chk(1,&DAT_0011ea67,uVar6);" (call_expression "__printf_chk(1,&DAT_0011ea67,uVar6)" (identifier "__printf_chk") (argument_list "(1,&DAT_0011ea67,uVar6)" (( "(") (number_literal "1") (, ",") (pointer_expression "&DAT_0011ea67" (& "&") (identifier "DAT_0011ea67")) (, ",") (identifier "uVar6") () ")"))) (; ";")) (} "}"))) (if_statement "if ((uVar6 == 0) && ((local_cd8 == 0 || (DAT_00126270 != 0)))) {\n    local_cc8 = (uint)(local_cec == 0);\n  }" (if "if") (parenthesized_expression "((uVar6 == 0) && ((local_cd8 == 0 || (DAT_00126270 != 0))))" (( "(") (binary_expression "(uVar6 == 0) && ((local_cd8 == 0 || (DAT_00126270 != 0)))" (parenthesized_expression "(uVar6 == 0)" (( "(") (binary_expression "uVar6 == 0" (identifier "uVar6") (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "((local_cd8 == 0 || (DAT_00126270 != 0)))" (( "(") (parenthesized_expression "(local_cd8 == 0 || (DAT_00126270 != 0))" (( "(") (binary_expression "local_cd8 == 0 || (DAT_00126270 != 0)" (binary_expression "local_cd8 == 0" (identifier "local_cd8") (== "==") (number_literal "0")) (|| "||") (parenthesized_expression "(DAT_00126270 != 0)" (( "(") (binary_expression "DAT_00126270 != 0" (identifier "DAT_00126270") (!= "!=") (number_literal "0")) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n    local_cc8 = (uint)(local_cec == 0);\n  }" ({ "{") (expression_statement "local_cc8 = (uint)(local_cec == 0);" (assignment_expression "local_cc8 = (uint)(local_cec == 0)" (identifier "local_cc8") (= "=") (call_expression "(uint)(local_cec == 0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(local_cec == 0)" (( "(") (binary_expression "local_cec == 0" (identifier "local_cec") (== "==") (number_literal "0")) () ")")))) (; ";")) (} "}"))) (labeled_statement "LAB_0010468d:\n  if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n    __stack_chk_fail();\n  }" (statement_identifier "LAB_0010468d") (: ":") (if_statement "if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n    __stack_chk_fail();\n  }" (if "if") (parenthesized_expression "(local_40 != *(long *)(in_FS_OFFSET + 0x28))" (( "(") (binary_expression "local_40 != *(long *)(in_FS_OFFSET + 0x28)" (identifier "local_40") (!= "!=") (pointer_expression "*(long *)(in_FS_OFFSET + 0x28)" (* "*") (cast_expression "(long *)(in_FS_OFFSET + 0x28)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(in_FS_OFFSET + 0x28)" (( "(") (binary_expression "in_FS_OFFSET + 0x28" (identifier "in_FS_OFFSET") (+ "+") (number_literal "0x28")) () ")"))))) () ")")) (compound_statement "{\n                    \n    __stack_chk_fail();\n  }" ({ "{") (expression_statement "__stack_chk_fail();" (call_expression "__stack_chk_fail()" (identifier "__stack_chk_fail") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))) (return_statement "return (ulong)local_cc8;" (return "return") (cast_expression "(ulong)local_cc8" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "local_cc8")) (; ";")) (} "}")))

/* WARNING: Removing unreachable block (ram,0x00105539) */
/* WARNING: Removing unreachable block (ram,0x00105514) */
/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */

int function_1(int var_23,char **var_57,int var_17)

{
  char var_64;
  long var_99;
  bool bVar3;
  type_1 uVar4;
  type_2 var_94;
  type_3 *pvVar6;
  type_4 _Var7;
  int var_8;
  type_1 uVar9;
  type_1 uVar10;
  type_5 var_37;
  type_6 uVar12;
  type_7 *bufp;
  type_8 *prVar13;
  char *var_60;
  char *var_54;
  int *piVar16;
  size_t var_62;
  type_9 **ppuVar18;
  type_6 uVar19;
  type_10 *var_83;
  type_6 uVar20;
  char *var_53;
  char *pcVar22;
  size_t sVar23;
  type_11 *var_16;
  type_12 var_98;
  int var_52;
  int *unaff_RBP;
  type_13 var_47;
  type_14 *fn;
  int unaff_R12D;
  char **var_66;
  int var_27;
  long var_1;
  type_15 bVar29;
  double var_41;
  int var_58;
  char *var_18;
  char *local_cf8;
  type_1 var_26;
  int var_21;
  double var_88;
  type_16 *var_44;
  type_1 var_28;
  type_2 var_67;
  char *var_96;
  type_1 var_9;
  int var_56;
  char **var_80;
  type_12 var_81;
  int var_71;
  type_1 var_76;
  type_1 var_51;
  type_1 var_29;
  char *local_ca0;
  int var_73;
  int var_20;
  size_t var_32;
  size_t var_30;
  int opti;
  type_17 uStack_c6c;
  char *end;
  type_18 local_c60;
  type_19 st;
  type_20 procdata;
  char hbuf1 [652];
  char hbuf2 [652];
  char hbuf3 [652];
  char hbuf4 [652];
  
  bVar29 = 0;
  var_99 = *(long *)(var_1 + 0x28);
  if (*var_57 == (char *)0x0) {
    var_2("locate");
  }
  else {
    var_2(*var_57);
  }
  var_3(6,"");
  var_4("findutils","/usr/share/locale");
  var_5("findutils");
  quote_opts = var_6((type_21 *)0x0);
  var_8 = var_7(close_stdout);
  if ((var_8 == 0) && (var_9 = var_7(cleanup_quote_opts), var_9 == 0)) {
    limits.limit = 0;
    limits.items_accepted = 0;
    var_72 = true;
    var_18 = var_10("LOCATE_PATH");
    var_93 = ACCEPT_EITHER;
    unaff_RBP = &opti;
    var_16 = &DAT_0011eb4c;
    var_58 = 0;
    var_26 = 0;
    var_21 = 0;
    var_56 = 0;
    var_71 = 0;
    var_73 = 0;
    var_20 = 0;
    var_27 = 0;
    var_28 = var_9;
  }
  else {
    var_16 = (type_11 *)var_11(0,"The atexit library function failed",5);
    piVar16 = var_12();
    var_13(1,*piVar16,var_16);
    var_73 = unaff_R12D;
  }
  opti = -1;
  var_8 = var_14(var_23,var_57,"Abcd:eEil:prsm0SwHPL",longopts,unaff_RBP);
  if (var_8 != -1) {
    if (0x51 < var_8 - 0x30U) {
                    /* WARNING: Subroutine does not return */
      var_15(1);
    }
                    /* WARNING: Could not recover jumptable at 0x00104479. Too many branches */
                    /* WARNING: Treating indirect jump as call */
    var_8 = (*(type_14 *)(var_16 + *(int *)(var_16 + (type_13)(var_8 - 0x30U) * 4)))();
    return var_8;
  }
  var_29 = var_17;
  if ((-1 < var_17) && (var_29 = var_17, var_18 != (char *)0x0)) {
    var_19(var_17);
    var_29 = 0xffffffff;
  }
  if (var_20 == 0 && var_21 == 0) {
    if (var_22 == var_23) {
      uVar20 = var_11(0,"pattern argument expected",5);
      var_13(0,0,uVar20);
                    /* WARNING: Subroutine does not return */
      var_15(1);
    }
    var_71 = 1;
  }
  else if ((var_21 != 0) && (var_22 == var_23)) {
    var_28 = var_9;
  }
  var_8 = var_24(1);
  stdout_is_a_tty = var_8 == 1;
  if (var_18 != (char *)0x0) {
    var_25(var_18,":",true,&var_32,&var_30);
  }
  uVar9 = var_26 | 0x400000;
  if (var_27 == 0) {
    uVar9 = var_26;
  }
  bVar3 = false;
  var_98 = 0;
  while ((var_28 == 0 || (limits.items_accepted < limits.limit))) {
    statistics.highbit_filename_count = 0;
    statistics.newline_count = 0;
    statistics.whitespace_count = 0;
    statistics.total_filename_length = 0;
    statistics.total_filename_count = 0;
    statistics.compressed_bytes = 0;
    if (var_18 == (char *)0x0) {
      if (var_29 == 0xffffffff) break;
      local_cf8 = selected_secure_db;
      var_96 = var_18;
      uVar10 = var_29;
      var_29 = 0xffffffff;
    }
    else {
      if (var_30 == 1) {
        if (var_18[var_32] == '-') {
          if (!bVar3) {
            bVar3 = true;
            local_cf8 = "<stdin>";
            var_96 = (char *)0x0;
            uVar10 = var_9;
            goto LAB_00105254;
          }
          uVar20 = var_11(0,"warning: the locate database can only be read from stdin once.",5);
          var_13(0,0,uVar20);
          goto LAB_0010468d;
        }
        if (var_18[var_32] != '.') goto LAB_00104891;
        local_cf8 = "/var/cache/locate/locatedb";
        var_96 = (char *)0x0;
      }
      else {
        local_cf8 = "/var/cache/locate/locatedb";
        var_96 = (char *)0x0;
        if (var_30 != 0) {
LAB_00104891:
          local_cf8 = var_31(var_18 + var_32,var_30);
          var_96 = local_cf8;
        }
      }
      uVar10 = var_33(local_cf8);
      if ((int)uVar10 < 0) {
        var_54 = var_34(L'\0',locale_quoting_style,local_cf8);
        piVar16 = var_12();
        var_13(0,*piVar16,&DAT_001207c7,var_54);
        goto LAB_0010468d;
      }
    }
LAB_00105254:
    var_8 = var_35(1,uVar10,(type_19 *)&st);
    if (var_8 == 0) {
      var_81 = st.st_size;
      end = (char *)st.st_mtim.tv_sec;
      local_c60 = st.st_mtim.tv_nsec;
      var_37 = var_36((type_5 *)&opti);
      if (var_37 == -1) {
        uVar20 = var_11(0,"time system call failed",5);
        piVar16 = var_12();
        var_13(0,*piVar16,uVar20);
      }
      else {
        var_41 = var_38(var_39(uStack_c6c,opti),st.st_mtim.tv_sec);
        uVar4 = var_40;
        if ((double)(var_40 * 0x15180) < var_41) {
          uVar20 = var_11(0,"days",5);
          uVar19 = var_11(0,"days",5);
          var_54 = var_34(L'\0',locale_quoting_style,local_cf8);
          uVar12 = var_11(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"
                             ,5);
          var_13(var_41 / var_42,0,0,uVar12,var_54,uVar4,uVar19,uVar20);
        }
      }
      var_44 = var_43(uVar10,"r");
      if (var_44 == (type_16 *)0x0) goto LAB_00104b19;
      var_80 = &end;
    }
    else {
      var_54 = var_34(L'\0',locale_quoting_style,local_cf8);
      piVar16 = var_12();
      var_13(0,*piVar16,&DAT_001207c7,var_54);
      var_44 = var_43(uVar10,"r");
      if (var_44 == (type_16 *)0x0) {
LAB_00104b19:
        var_54 = var_34(L'\0',locale_quoting_style,local_cf8);
        piVar16 = var_12();
        var_13(0,*piVar16,&DAT_001207c7,var_54);
        goto LAB_0010468d;
      }
      var_81 = 0;
      var_80 = (char **)0x0;
    }
    var_94 = var_93;
    uVar10 = var_22;
    var_60 = (char *)(type_13)var_22;
    var_8 = var_23 - var_22;
    var_67 = var_93;
    procdata.endian_state = GetwordEndianStateInitial;
    procdata.count = 0;
    procdata.len = 0;
    procdata.dbfile = local_cf8;
    procdata.fp = (type_16 *)var_44;
    inspectors = (type_3 *)0x0;
    lastinspector = (type_3 *)0x0;
    past_pat_inspector = (type_3 *)0x0;
    var_87 = false;
    procdata.pathsize = 0x80;
    procdata.original_filename = (char *)var_45(0x80);
    var_62 = var_46(procdata.original_filename,1,2,(type_16 *)procdata.fp);
    var_54 = procdata.original_filename;
    var_47 = (type_13)(int)var_62;
    if (2 < var_47) {
                    /* WARNING: Subroutine does not return */
      var_48("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");
    }
    if ((var_47 < 2) || (procdata.original_filename[1] != '\0')) {
LAB_00105aa4:
      var_49(&procdata,10,0);
      sVar23 = var_46(procdata.original_filename + var_47,1,10 - var_47,(type_16 *)procdata.fp);
      var_52 = (int)var_62 + (int)sVar23;
      if (((type_13)(long)var_52 < 10) ||
         (var_51 = var_50(procdata.original_filename,&DAT_0011eb40,10), var_51 != 0)) {
        var_49(&procdata,0x100,0);
        if ((0xff < var_52) ||
           (var_62 = var_46(procdata.original_filename + var_52,1,(long)(0x100 - var_52),
                           (type_16 *)procdata.fp), var_52 + (int)var_62 == 0x100)) {
          var_54 = procdata.bigram1;
          var_53 = procdata.original_filename;
          do {
            *var_54 = *var_53;
            var_54[0x80] = var_53[1];
            var_53 = var_53 + 2;
            var_54 = var_54 + 1;
          } while (var_54 != procdata.bigram2);
          var_55(visit_old_format,(void *)0x0);
          var_76 = var_9;
          local_ca0 = "old";
          var_51 = 1;
          goto LAB_0010543a;
        }
        var_60 = var_34(L'\0',locale_quoting_style,local_cf8);
        uVar20 = var_11(0,"Old-format locate database %s is too short to be valid",5);
        var_13(1,0,uVar20,var_60);
LAB_00104daa:
        uVar10 = (type_1)var_60;
        var_55(visit_basename,(void *)0x0);
      }
      else {
        var_55(visit_locate02_format,(void *)0x0);
        local_ca0 = "GNU LOCATE02";
        var_76 = 0;
LAB_0010543a:
        if (var_56 != 0) goto LAB_00104daa;
      }
      if (0 < var_8) {
        var_66 = var_57 + (int)uVar10;
        do {
          var_87 = true;
          var_54 = *var_66;
          if (var_58 == 0) {
            var_60 = var_59(var_54,"*?[]\\");
            if (var_60 == (char *)0x0) {
              var_62 = var_61();
              if (var_62 == 1) {
                fn = visit_substring_match_nocasefold_narrow;
                if (var_27 != 0) {
                  fn = visit_substring_match_casefold_narrow;
                }
              }
              else {
                fn = visit_substring_match_nocasefold_wide;
                if (var_27 != 0) {
                  fn = visit_substring_match_casefold_wide;
                }
              }
              var_55(fn,var_54);
            }
            else {
              if (var_27 == 0) goto LAB_00104ee7;
              var_55(visit_globmatch_casefold,var_54);
            }
          }
          else {
            bufp = (type_7 *)var_45(0x40);
            bufp->buffer = (type_8 *)0x0;
            bufp->allocated = 0;
            bufp->used = 0;
            bufp->syntax = 0;
            bufp->fastmap = (char *)0x0;
            bufp->translate = (type_22 *)0x0;
            bufp->re_nsub = 0;
            *(type_6 *)&bufp->field_0x38 = 0;
            var_63((long)(int)uVar9);
            bufp->allocated = 100;
            prVar13 = (type_8 *)var_45(100);
            bufp->buffer = prVar13;
            bufp->fastmap = (char *)0x0;
            bufp->syntax = (long)(int)uVar9;
            bufp->translate = (type_22 *)0x0;
            var_47 = 0xffffffffffffffff;
            var_60 = var_54;
            do {
              if (var_47 == 0) break;
              var_47 = var_47 - 1;
              var_64 = *var_60;
              var_60 = var_60 + (type_13)bVar29 * -2 + 1;
            } while (var_64 != '\0');
            var_60 = var_65(var_54,~var_47 - 1,bufp);
            if (var_60 == (char *)0x0) {
              var_55(visit_regex,bufp);
            }
            else {
              var_13(1,0,&DAT_001207c7,var_60);
LAB_00104ee7:
              var_55(visit_globmatch_nofold,var_54);
            }
          }
          var_66 = var_66 + 1;
        } while (var_66 != var_57 + (long)(int)uVar10 + (type_13)(var_8 - 1) + 1);
      }
      pvVar6 = lastinspector;
      if (var_67 == var_68) {
        var_87 = true;
        if (var_69 == 0) {
          var_55(visit_existing_nofollow,(void *)0x0);
        }
        else {
          var_55(visit_existing_follow,(void *)0x0);
        }
      }
      else if (var_67 == var_70) {
        var_87 = true;
        if (var_69 == 0) {
          var_55(visit_non_existing_nofollow,(void *)0x0);
        }
        else {
          var_55(visit_non_existing_follow,(void *)0x0);
        }
      }
      if (var_21 != 0) {
        var_55(visit_stats,&statistics);
      }
      if (var_71 != 0) {
        if (var_72 == false) {
          var_55(visit_justprint_unquoted,(void *)0x0);
        }
        else {
          var_55(visit_justprint_quoted,(void *)0x0);
        }
      }
      if (var_28 == 0) {
        var_55(visit_count,&limits);
      }
      else {
        var_55(visit_limit,&limits);
      }
      var_54 = procdata.dbfile;
      if (var_8 < 2) {
        mainprocessor = process_simple;
      }
      else {
        past_pat_inspector = pvVar6->next;
        if (var_73 == 0) {
          mainprocessor = process_or;
        }
        else {
          mainprocessor = process_and;
        }
      }
      if (var_21 != 0) {
        uVar20 = var_11(0,"Database %s is in the %s format.\n",5);
        var_74(1,uVar20,var_54,local_ca0);
      }
      procdata.c = var_75((type_16 *)procdata.fp);
      if ((procdata.c != -1) && (var_76 != 0)) {
        var_77(procdata.c,(type_16 *)procdata.fp);
        procdata.c = 0;
      }
      do {
        if (procdata.c == -1) break;
        var_52 = (*mainprocessor)(&procdata);
      } while (var_52 != 8);
      if (var_21 != 0) {
        if (var_51 != 0) {
          uVar20 = var_11(0,"The database has little-endian machine-word encoding.\n",5);
          uVar19 = var_11(0,"The database has big-endian machine-word encoding.\n",5);
          if (procdata.endian_state == var_78) {
            var_74(1,&DAT_001207c7,uVar20);
          }
          else if (procdata.endian_state == var_79) {
            var_74(1,&DAT_001207c7,uVar19);
          }
          else {
            uVar20 = var_11(0,"The database machine-word encoding order is not obvious.\n",5);
            var_74(1,uVar20);
          }
        }
        if (var_80 != (char **)0x0 || var_81 != 0) {
          if ((var_80 != (char **)0x0) &&
             (var_83 = var_82((type_5 *)var_80), var_83 != (type_10 *)0x0)) {
            var_62 = var_84(hbuf4,0x14,"%Y:%m:%d %H:%M:%S",var_83);
            if (var_62 != 0x13) {
                    /* WARNING: Subroutine does not return */
              var_48("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");
            }
            if (hbuf4[0x13] != '\0') {
                    /* WARNING: Subroutine does not return */
              var_48("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");
            }
            if (hbuf4[0x12] == '\0') {
                    /* WARNING: Subroutine does not return */
              var_48("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");
            }
            var_54 = var_80[1];
            uVar20 = var_11(0,"Database was last modified at %s.%09ld",5);
            var_74(1,uVar20,hbuf4,var_54);
            var_62 = var_84(hbuf4,0x14,"%z",var_83);
            if (var_62 != 5) {
                    /* WARNING: Subroutine does not return */
              var_48("printed == 5","locate.c",0x351,"print_stats");
            }
            var_74(1," %s\n",hbuf4);
          }
          var_54 = var_85(var_81,hbuf1,0,1,1);
          uVar20 = var_86(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"
                              ,var_81,5);
          var_74(1,uVar20,var_54);
          var_54 = var_85(statistics.total_filename_count,hbuf1,0,1,1);
          if (var_87 == false) {
            uVar20 = var_11(0,"All Filenames: %s\n",5);
          }
          else {
            uVar20 = var_11(0,"Matching Filenames: %s\n",5);
          }
          var_74(1,uVar20,var_54);
          var_54 = var_85(statistics.highbit_filename_count,hbuf4,0,1,1);
          var_60 = var_85(statistics.newline_count,hbuf3,0,1,1);
          var_53 = var_85(statistics.whitespace_count,hbuf2,0,1,1);
          pcVar22 = var_85(statistics.total_filename_length,hbuf1,0,1,1);
          uVar20 = var_11(0,
                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"
                             ,5);
          var_74(1,uVar20,pcVar22,var_53,var_60,var_54);
          if (var_8 == 0) {
            if (var_87 == false) {
              if (statistics.total_filename_length == 0) {
                uVar20 = var_11(0,"Compression ratio is undefined\n",5);
                var_74(1,uVar20);
              }
              else {
                var_88 = (double)statistics.total_filename_length;
                uVar20 = var_11(0,"Compression ratio %4.2f%% (higher is better)\n",5);
                var_74(((var_88 - (double)var_81) * var_89) / var_88,1,uVar20)
                ;
              }
            }
            else {
              uVar20 = var_11(0,
                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"
                                 ,5);
              var_74(1,uVar20);
            }
          }
          var_90(10);
        }
      }
      var_8 = var_91((type_16 *)procdata.fp);
      var_98 = limits.items_accepted;
      if (var_8 != 0) {
        var_54 = var_34(L'\0',locale_quoting_style,procdata.dbfile);
        piVar16 = var_12();
        var_13(0,*piVar16,&DAT_001207c7,var_54);
        var_98 = 0;
      }
    }
    else {
      ppuVar18 = var_92();
      if ((*(type_15 *)((long)*ppuVar18 + (type_13)(type_15)*var_54 * 2 + 1) & 8) == 0) goto LAB_00105aa4;
      var_52 = *var_54 + -0x30;
      if (var_52 < 2) {
        if (var_52 == 1) {
          if (var_93 == var_70) {
            uVar20 = var_11(0,
                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"
                               ,5);
            var_13(0,0,uVar20);
            var_98 = 0;
            goto LAB_0010514b;
          }
          if ((var_94 != var_68) &&
             (var_67 = var_68, var_71 != 0 || var_21 != 0)) {
            var_54 = var_34(L'\0',locale_quoting_style,procdata.dbfile);
            uVar20 = var_11(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);
            var_13(0,0,uVar20,var_54);
            var_67 = var_68;
          }
        }
        var_55(visit_locate02_format,(void *)0x0);
        var_51 = var_9;
        local_ca0 = "slocate";
        var_76 = 1;
        goto LAB_0010543a;
      }
      var_54 = var_34(L'\0',locale_quoting_style,procdata.dbfile);
      uVar20 = var_11(0,
                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"
                         ,5);
      var_13(0,0,uVar20,var_54,0);
      var_54 = var_34(L'\0',locale_quoting_style,procdata.dbfile);
      uVar20 = var_11(0,
                         "%s is an slocate database of unsupported security level %d; skipping it.",
                         5);
      var_13(0,0,uVar20,var_54,var_52);
      var_98 = 0;
    }
LAB_0010514b:
    var_8 = var_95(var_44);
    if (var_8 == -1) {
      var_54 = var_34(L'\0',locale_quoting_style,local_cf8);
      piVar16 = var_12();
      var_13(0,*piVar16,&DAT_001207c7,var_54);
      goto LAB_0010468d;
    }
    if (var_96 != (char *)0x0) {
      var_97(var_96);
    }
    if ((var_18 == (char *)0x0) ||
       (_Var7 = var_25(var_18,":",false,&var_32,&var_30), !_Var7))
    break;
  }
  if (var_20 != 0) {
    var_74(1,&DAT_0011ea67,var_98);
  }
  if ((var_98 == 0) && ((var_28 == 0 || (limits.limit != 0)))) {
    var_9 = (type_1)(var_21 == 0);
  }
LAB_0010468d:
  if (var_99 != *(long *)(var_1 + 0x28)) {
                    /* WARNING: Subroutine does not return */
    var_100();
  }
  return var_9;
}


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

/* WARNING: Removing unreachable block (ram,0x00105539) */
/* WARNING: Removing unreachable block (ram,0x00105514) */
/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */

ulong MASKED(uint param_1,long *param_2,undefined8 param_3)

{
  char *pcVar1;
  char cVar2;
  int iVar3;
  uint uVar4;
  int iVar5;
  ulong uVar6;
  time_t tVar7;
  byte *pbVar8;
  undefined8 *puVar9;
  long lVar10;
  char *pcVar11;
  undefined8 uVar12;
  int *piVar13;
  size_t sVar14;
  ushort **ppuVar15;
  tm *__tp;
  undefined8 uVar16;
  undefined8 uVar17;
  undefined8 uVar18;
  undefined8 uVar19;
  size_t sVar20;
  byte *pbVar21;
  undefined *puVar22;
  int iVar23;
  undefined4 *unaff_RBP;
  ulong uVar24;
  code *pcVar25;
  int unaff_R12D;
  long *plVar26;
  int unaff_R15D;
  long in_FS_OFFSET;
  byte bVar27;
  double dVar28;
  int local_d04;
  char *local_d00;
  char *local_cf8;
  uint local_cf0;
  int local_cec;
  double local_ce8;
  FILE *local_ce0;
  uint local_cd8;
  int local_cd4;
  char *local_cd0;
  uint local_cc8;
  int local_cc4;
  time_t *local_cc0;
  ulong local_cb8;
  int local_cb0;
  uint local_cac;
  uint local_ca8;
  uint local_ca4;
  char *local_ca0;
  int local_c98;
  int local_c94;
  uint local_c90;
  char local_c89;
  long local_c80;
  size_t local_c78;
  undefined4 local_c70;
  undefined4 uStack_c6c;
  time_t local_c68;
  long local_c60;
  stat local_c58;
  int local_bc8 [4];
  byte *local_bb8;
  undefined8 local_bb0;
  FILE *local_ba0;
  char *local_b98;
  int local_b90;
  byte local_b8c [128];
  byte local_b0c [132];
  undefined1 local_a88 [656];
  undefined1 local_7f8 [656];
  undefined1 local_568 [656];
  char local_2d8 [18];
  char local_2c6;
  char local_2c5;
  long local_40;
  
  bVar27 = 0;
  local_ca4 = (uint)param_3;
  local_40 = *(long *)(in_FS_OFFSET + 0x28);
  if (*param_2 == 0) {
    FUN_0010b3a9("locate",param_2,param_3,0);
  }
  else {
    FUN_0010b3a9();
  }
  setlocale(6,"");
  bindtextdomain("findutils","/usr/share/locale");
  textdomain("findutils");
  DAT_00126290 = FUN_0010c71d(0);
  iVar3 = FUN_0011d670(FUN_001064e7);
  if ((iVar3 == 0) && (local_cc8 = FUN_0011d670(FUN_001038f1), local_cc8 == 0)) {
    DAT_00126270 = 0;
    DAT_00126278 = 0;
    DAT_00126289 = '\x01';
    local_d00 = getenv("LOCATE_PATH");
    DAT_00126200 = 0;
    unaff_RBP = &local_c70;
    puVar22 = &DAT_0011eb4c;
    unaff_R12D = 1;
    local_d04 = 0;
    local_cf0 = 0;
    local_cec = 0;
    local_cb0 = 0;
    local_c98 = 0;
    local_c94 = 0;
    unaff_R15D = 0;
    local_cd8 = local_cc8;
    local_cc4 = 0;
  }
  else {
    puVar22 = (undefined *)dcgettext(0,"The atexit library function failed",5);
    piVar13 = __errno_location();
    error(1,*piVar13,puVar22);
    local_c98 = unaff_R12D;
  }
  while( true ) {
    local_c70 = 0xffffffff;
    iVar3 = getopt_long(param_1,param_2,"Abcd:eEil:prsm0SwHPL",&PTR_s_database_00125720,unaff_RBP);
    if (iVar3 == -1) break;
    if (iVar3 - 0x30U < 0x52) {
                    /* WARNING: Could not recover jumptable at 0x00104479. Too many branches */
                    /* WARNING: Treating indirect jump as call */
      uVar6 = (*(code *)(puVar22 + *(int *)(puVar22 + (ulong)(iVar3 - 0x30U) * 4)))();
      return uVar6;
    }
    FUN_00103906(1);
    local_cc4 = unaff_R12D;
  }
  if ((-1 < (int)local_ca4) && (local_d00 != (char *)0x0)) {
    close(local_ca4);
    local_ca4 = 0xffffffff;
  }
  if (local_c94 == 0 && local_cec == 0) {
    if (optind == param_1) {
      uVar12 = dcgettext(0,"pattern argument expected",5);
      sVar14 = 0;
      error(0,0,uVar12);
      FUN_00103906(1);
      goto LAB_00104874;
    }
    local_cb0 = 1;
  }
  else if ((local_cec != 0) && (optind == param_1)) {
    local_cd8 = local_cc8;
  }
  iVar3 = isatty(1);
  DAT_0012628a = iVar3 == 1;
  if (local_d00 != (char *)0x0) {
    FUN_001063f9(local_d00,":",1,&local_c80,&local_c78);
  }
  uVar4 = local_cf0 | 0x400000;
  if (unaff_R15D == 0) {
    uVar4 = local_cf0;
  }
  local_c89 = '\0';
  uVar6 = 0;
  local_c90 = 0xffffffff;
  local_cf0 = uVar4;
  while ((uVar4 = local_ca4, local_cd8 == 0 || (DAT_00126278 < DAT_00126270))) {
    DAT_00126268 = 0;
    DAT_00126260 = 0;
    DAT_00126258 = 0;
    DAT_00126250 = 0;
    DAT_00126248 = 0;
    _DAT_00126240 = 0;
    if (local_d00 == (char *)0x0) {
      if (local_ca4 == 0xffffffff) break;
      local_cf8 = DAT_00126280;
      local_cd0 = local_d00;
      local_ca4 = local_c90;
    }
    else {
      sVar14 = local_c78;
      if (local_c78 == 1) {
LAB_00104874:
        if (local_d00[local_c80] == '-') {
          if (local_c89 == '\0') {
            local_c89 = '\x01';
            local_cf8 = "<stdin>";
            local_cd0 = (char *)0x0;
            uVar4 = local_cc8;
            goto LAB_00105254;
          }
          uVar12 = dcgettext(0,"warning: the locate database can only be read from stdin once.",5);
          error(0,0,uVar12);
          goto LAB_0010468d;
        }
        if (local_d00[local_c80] != '.') goto LAB_00104891;
        local_cf8 = "/var/cache/locate/locatedb";
        local_cd0 = (char *)0x0;
      }
      else {
        local_cf8 = "/var/cache/locate/locatedb";
        local_cd0 = (char *)0x0;
        if (local_c78 != 0) {
LAB_00104891:
          local_cf8 = strndup(local_d00 + local_c80,sVar14);
          local_cd0 = local_cf8;
        }
      }
      uVar4 = FUN_001038af(local_cf8);
      if ((int)uVar4 < 0) {
        uVar12 = FUN_0010ca58(0,8,local_cf8);
        piVar13 = __errno_location();
        error(0,*piVar13,&DAT_001207c7,uVar12);
        goto LAB_0010468d;
      }
    }
LAB_00105254:
    iVar3 = __fxstat(1,uVar4,&local_c58);
    if (iVar3 == 0) {
      local_cb8 = local_c58.st_size;
      local_c68 = local_c58.st_mtim.tv_sec;
      local_c60 = local_c58.st_mtim.tv_nsec;
      tVar7 = time((time_t *)&local_c70);
      if (tVar7 == -1) {
        uVar12 = dcgettext(0,"time system call failed",5);
        piVar13 = __errno_location();
        error(0,*piVar13,uVar12);
      }
      else {
        dVar28 = difftime(CONCAT44(uStack_c6c,local_c70),local_c58.st_mtim.tv_sec);
        iVar3 = DAT_00126018;
        if ((double)(uint)(DAT_00126018 * 0x15180) < dVar28) {
          uVar12 = dcgettext(0,&DAT_0011ed91,5);
          uVar16 = dcgettext(0,&DAT_0011ed91,5);
          uVar17 = FUN_0010ca58(0,8,local_cf8);
          uVar18 = dcgettext(0,"warning: database %s is more than %u %s old (actual age is %.1f %s)"
                             ,5);
          error(dVar28 / _DAT_0011ed98,0,0,uVar18,uVar17,iVar3,uVar16,uVar12);
        }
      }
      local_ce0 = fdopen(uVar4,"r");
      if (local_ce0 == (FILE *)0x0) goto LAB_00104b19;
      local_cc0 = &local_c68;
    }
    else {
      uVar12 = FUN_0010ca58(0,8,local_cf8);
      piVar13 = __errno_location();
      error(0,*piVar13,&DAT_001207c7,uVar12);
      local_ce0 = fdopen(uVar4,"r");
      if (local_ce0 == (FILE *)0x0) {
LAB_00104b19:
        uVar12 = FUN_0010ca58(0,8,local_cf8);
        piVar13 = __errno_location();
        error(0,*piVar13,&DAT_001207c7,uVar12);
        goto LAB_0010468d;
      }
      local_cb8 = 0;
      local_cc0 = (time_t *)0x0;
    }
    iVar3 = DAT_00126200;
    uVar4 = optind;
    uVar6 = (ulong)optind;
    iVar5 = param_1 - optind;
    local_cd4 = DAT_00126200;
    local_b90 = 0;
    local_bc8[1] = 0;
    local_bc8[2] = 0;
    local_b98 = local_cf8;
    local_ba0 = local_ce0;
    DAT_00126220 = 0;
    DAT_00126218 = 0;
    DAT_00126210 = 0;
    DAT_00126288 = '\0';
    local_bb0 = 0x80;
    local_bb8 = (byte *)FUN_0010d559(0x80);
    sVar14 = fread(local_bb8,1,2,local_ba0);
    pbVar8 = local_bb8;
    uVar24 = (ulong)(int)sVar14;
    if (2 < uVar24) {
                    /* WARNING: Subroutine does not return */
      __assert_fail("len <= 2","locate.c",0x3a5,"looking_at_slocate_locatedb");
    }
    if ((uVar24 < 2) || (local_bb8[1] != 0)) {
LAB_00105aa4:
      FUN_001040e7(local_bc8,10,0);
      sVar20 = fread(local_bb8 + uVar24,1,10 - uVar24,local_ba0);
      iVar3 = (int)sVar14 + (int)sVar20;
      if (((ulong)(long)iVar3 < 10) ||
         (local_ca8 = memcmp(local_bb8,&DAT_0011eb40,10), local_ca8 != 0)) {
        FUN_001040e7(local_bc8,0x100,0);
        if ((0xff < iVar3) ||
           (sVar14 = fread(local_bb8 + iVar3,1,(long)(0x100 - iVar3),local_ba0),
           iVar3 + (int)sVar14 == 0x100)) {
          pbVar8 = local_b8c;
          pbVar21 = local_bb8;
          do {
            *pbVar8 = *pbVar21;
            pbVar8[0x80] = pbVar21[1];
            pbVar21 = pbVar21 + 2;
            pbVar8 = pbVar8 + 1;
          } while (pbVar8 != local_b0c);
          FUN_001039a8(FUN_00104183,0);
          local_cac = local_cc8;
          local_ca0 = "old";
          local_ca8 = 1;
          goto LAB_0010543a;
        }
        uVar6 = FUN_0010ca58(0,8,local_cf8);
        uVar12 = dcgettext(0,"Old-format locate database %s is too short to be valid",5);
        error(1,0,uVar12,uVar6);
LAB_00104daa:
        uVar4 = (uint)uVar6;
        FUN_001039a8(FUN_00103e25,0);
      }
      else {
        FUN_001039a8(FUN_00103e3d,0);
        local_ca0 = "GNU LOCATE02";
        local_cac = 0;
LAB_0010543a:
        if (local_cc4 != 0) goto LAB_00104daa;
      }
      if (0 < iVar5) {
        plVar26 = param_2 + (int)uVar4;
        do {
          DAT_00126288 = '\x01';
          pcVar1 = (char *)*plVar26;
          if (local_d04 == 0) {
            pcVar11 = strpbrk(pcVar1,"*?[]\\");
            if (pcVar11 == (char *)0x0) {
              sVar14 = __ctype_get_mb_cur_max();
              if (sVar14 == 1) {
                pcVar25 = FUN_00103ce1;
                if (unaff_R15D != 0) {
                  pcVar25 = FUN_00103d36;
                }
              }
              else {
                pcVar25 = FUN_00103ca5;
                if (unaff_R15D != 0) {
                  pcVar25 = FUN_00103cc3;
                }
              }
              FUN_001039a8(pcVar25,pcVar1);
            }
            else {
              if (unaff_R15D == 0) goto LAB_00104ee7;
              FUN_001039a8(FUN_00103db3,pcVar1);
            }
          }
          else {
            puVar9 = (undefined8 *)FUN_0010d559(0x40);
            *puVar9 = 0;
            puVar9[1] = 0;
            puVar9[2] = 0;
            puVar9[3] = 0;
            puVar9[4] = 0;
            puVar9[5] = 0;
            puVar9[6] = 0;
            puVar9[7] = 0;
            FUN_0011b1c7((long)(int)local_cf0);
            puVar9[1] = 100;
            uVar12 = FUN_0010d559(100);
            *puVar9 = uVar12;
            puVar9[4] = 0;
            puVar9[3] = (long)(int)local_cf0;
            puVar9[5] = 0;
            uVar6 = 0xffffffffffffffff;
            pcVar11 = pcVar1;
            do {
              if (uVar6 == 0) break;
              uVar6 = uVar6 - 1;
              cVar2 = *pcVar11;
              pcVar11 = pcVar11 + (ulong)bVar27 * -2 + 1;
            } while (cVar2 != '\0');
            lVar10 = FUN_0011b159(pcVar1,~uVar6 - 1,puVar9);
            if (lVar10 == 0) {
              FUN_001039a8(FUN_00103ddb,puVar9);
            }
            else {
              error(1,0,&DAT_001207c7,lVar10);
LAB_00104ee7:
              FUN_001039a8(FUN_00103d8b,pcVar1);
            }
          }
          plVar26 = plVar26 + 1;
        } while (plVar26 != param_2 + (long)(int)uVar4 + (ulong)(iVar5 - 1) + 1);
      }
      lVar10 = DAT_00126218;
      if (local_cd4 == 1) {
        DAT_00126288 = '\x01';
        if (DAT_00126014 == 0) {
          FUN_001039a8(FUN_00103b4d,0);
        }
        else {
          FUN_001039a8(FUN_00103bf9,0);
        }
      }
      else if (local_cd4 == 2) {
        DAT_00126288 = '\x01';
        if (DAT_00126014 == 0) {
          FUN_001039a8(FUN_00103ba3,0);
        }
        else {
          FUN_001039a8(FUN_00103c4f,0);
        }
      }
      if (local_cec != 0) {
        FUN_001039a8(FUN_00103a70,&DAT_00126240);
      }
      if (local_cb0 != 0) {
        if (DAT_00126289 == '\0') {
          FUN_001039a8(FUN_001039fb,0);
        }
        else {
          FUN_001039a8(FUN_00103a2b,0);
        }
      }
      if (local_cd8 == 0) {
        FUN_001039a8(FUN_001038a4,&DAT_00126270);
      }
      else {
        FUN_001039a8(FUN_00103887,&DAT_00126270);
      }
      pcVar1 = local_b98;
      if (iVar5 < 2) {
        DAT_00126208 = FUN_00103755;
      }
      else {
        DAT_00126210 = *(undefined8 *)(lVar10 + 0x10);
        if (local_c98 == 0) {
          DAT_00126208 = FUN_0010378e;
        }
        else {
          DAT_00126208 = FUN_0010380e;
        }
      }
      if (local_cec != 0) {
        uVar12 = dcgettext(0,"Database %s is in the %s format.\n",5);
        __printf_chk(1,uVar12,pcVar1,local_ca0);
      }
      local_bc8[0] = getc(local_ba0);
      if ((local_bc8[0] != -1) && (local_cac != 0)) {
        ungetc(local_bc8[0],local_ba0);
        local_bc8[0] = 0;
      }
      do {
        if (local_bc8[0] == -1) break;
        iVar3 = (*DAT_00126208)(local_bc8);
      } while (iVar3 != 8);
      if (local_cec != 0) {
        if (local_ca8 != 0) {
          uVar12 = dcgettext(0,"The database has little-endian machine-word encoding.\n",5);
          uVar16 = dcgettext(0,"The database has big-endian machine-word encoding.\n",5);
          if (local_b90 == 1) {
            __printf_chk(1,&DAT_001207c7,uVar12);
          }
          else if (local_b90 == 2) {
            __printf_chk(1,&DAT_001207c7,uVar16);
          }
          else {
            uVar12 = dcgettext(0,"The database machine-word encoding order is not obvious.\n",5);
            __printf_chk(1,uVar12);
          }
        }
        if (local_cc0 != (time_t *)0x0 || local_cb8 != 0) {
          if ((local_cc0 != (time_t *)0x0) && (__tp = localtime(local_cc0), __tp != (tm *)0x0)) {
            sVar14 = strftime(local_2d8,0x14,"%Y:%m:%d %H:%M:%S",__tp);
            if (sVar14 != 0x13) {
                    /* WARNING: Subroutine does not return */
              __assert_fail("printed == TIME_BUF_LEN-1","locate.c",0x34b,"print_stats");
            }
            if (local_2c5 != '\0') {
                    /* WARNING: Subroutine does not return */
              __assert_fail("whenbuf[TIME_BUF_LEN-1] == 0","locate.c",0x34c,"print_stats");
            }
            if (local_2c6 == '\0') {
                    /* WARNING: Subroutine does not return */
              __assert_fail("whenbuf[TIME_BUF_LEN-2] != 0","locate.c",0x34d,"print_stats");
            }
            tVar7 = local_cc0[1];
            uVar12 = dcgettext(0,"Database was last modified at %s.%09ld",5);
            __printf_chk(1,uVar12,local_2d8,tVar7);
            sVar14 = strftime(local_2d8,0x14,"%z",__tp);
            if (sVar14 != 5) {
                    /* WARNING: Subroutine does not return */
              __assert_fail("printed == 5","locate.c",0x351,"print_stats");
            }
            __printf_chk(1," %s\n",local_2d8);
          }
          uVar12 = FUN_0010670e(local_cb8,local_a88,0,1,1);
          uVar16 = dcngettext(0,"Locate database size: %s byte\n","Locate database size: %s bytes\n"
                              ,local_cb8,5);
          __printf_chk(1,uVar16,uVar12);
          uVar12 = FUN_0010670e(DAT_00126248,local_a88,0,1,1);
          if (DAT_00126288 == '\0') {
            uVar16 = dcgettext(0,"All Filenames: %s\n",5);
          }
          else {
            uVar16 = dcgettext(0,"Matching Filenames: %s\n",5);
          }
          __printf_chk(1,uVar16,uVar12);
          uVar12 = FUN_0010670e(DAT_00126268,local_2d8,0,1,1);
          uVar16 = FUN_0010670e(DAT_00126260,local_568,0,1,1);
          uVar17 = FUN_0010670e(DAT_00126258,local_7f8,0,1,1);
          uVar18 = FUN_0010670e(DAT_00126250,local_a88,0,1,1);
          uVar19 = dcgettext(0,
                             "File names have a cumulative length of %s bytes.\nOf those file names,\n\n\t%s contain whitespace, \n\t%s contain newline characters, \n\tand %s contain characters with the high bit set.\n"
                             ,5);
          __printf_chk(1,uVar19,uVar18,uVar17,uVar16,uVar12);
          if (iVar5 == 0) {
            if (DAT_00126288 == '\0') {
              if (DAT_00126250 == 0) {
                uVar12 = dcgettext(0,"Compression ratio is undefined\n",5);
                __printf_chk(1,uVar12);
              }
              else {
                local_ce8 = (double)DAT_00126250;
                uVar12 = dcgettext(0,"Compression ratio %4.2f%% (higher is better)\n",5);
                __printf_chk(((local_ce8 - (double)local_cb8) * _DAT_0011eda0) / local_ce8,1,uVar12)
                ;
              }
            }
            else {
              uVar12 = dcgettext(0,
                                 "Some filenames may have been filtered out, so we cannot compute the compression ratio.\n"
                                 ,5);
              __printf_chk(1,uVar12);
            }
          }
          putchar(10);
        }
      }
      iVar3 = ferror(local_ba0);
      uVar6 = DAT_00126278;
      if (iVar3 != 0) {
        uVar12 = FUN_0010ca58(0,8,local_b98);
        piVar13 = __errno_location();
        error(0,*piVar13,&DAT_001207c7,uVar12);
        uVar6 = 0;
      }
    }
    else {
      ppuVar15 = __ctype_b_loc();
      if ((*(byte *)((long)*ppuVar15 + (ulong)*pbVar8 * 2 + 1) & 8) == 0) goto LAB_00105aa4;
      iVar23 = (char)*pbVar8 + -0x30;
      if (iVar23 < 2) {
        if (iVar23 == 1) {
          if (DAT_00126200 == 2) {
            uVar12 = dcgettext(0,
                               "You specified the -E option, but that option cannot be used with slocate-format databases with a non-zero security level.  No results will be generated for this database.\n"
                               ,5);
            error(0,0,uVar12);
            uVar6 = 0;
            goto LAB_0010514b;
          }
          if ((iVar3 != 1) && (local_cd4 = 1, local_cb0 != 0 || local_cec != 0)) {
            uVar12 = FUN_0010ca58(0,8,local_b98);
            uVar16 = dcgettext(0,"%s is an slocate database.  Turning on the \'-e\' option.",5);
            error(0,0,uVar16,uVar12);
            local_cd4 = 1;
          }
        }
        FUN_001039a8(FUN_00103e3d,0);
        local_ca8 = local_cc8;
        local_ca0 = "slocate";
        local_cac = 1;
        goto LAB_0010543a;
      }
      uVar12 = FUN_0010ca58(0,8,local_b98);
      uVar16 = dcgettext(0,
                         "locate database %s looks like an slocate database but it seems to have security level %c, which GNU findutils does not currently support"
                         ,5);
      error(0,0,uVar16,uVar12,0);
      uVar12 = FUN_0010ca58(0,8,local_b98);
      uVar16 = dcgettext(0,
                         "%s is an slocate database of unsupported security level %d; skipping it.",
                         5);
      error(0,0,uVar16,uVar12,iVar23);
      uVar6 = 0;
    }
LAB_0010514b:
    iVar3 = fclose(local_ce0);
    if (iVar3 == -1) {
      uVar12 = FUN_0010ca58(0,8,local_cf8);
      piVar13 = __errno_location();
      error(0,*piVar13,&DAT_001207c7,uVar12);
      goto LAB_0010468d;
    }
    if (local_cd0 != (char *)0x0) {
      free(local_cd0);
    }
    if ((local_d00 == (char *)0x0) ||
       (cVar2 = FUN_001063f9(local_d00,":",0,&local_c80,&local_c78), cVar2 == '\0')) break;
  }
  if (local_c94 != 0) {
    __printf_chk(1,&DAT_0011ea67,uVar6);
  }
  if ((uVar6 == 0) && ((local_cd8 == 0 || (DAT_00126270 != 0)))) {
    local_cc8 = (uint)(local_cec == 0);
  }
LAB_0010468d:
  if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {
                    /* WARNING: Subroutine does not return */
    __stack_chk_fail();
  }
  return (ulong)local_cc8;
}

