
/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
/* WARNING: Unknown calling convention */

bfd_boolean gldelf32lppcsim_handle_option(int optc)

{
  undefined4 uVar1;
  undefined *puVar2;
  undefined1 uVar3;
  byte *pbVar4;
  char *pcVar5;
  ulong uVar6;
  char *pcVar7;
  int iVar8;
  byte *pbVar9;
  byte *pbVar10;
  bool bVar11;
  bool bVar12;
  bool bVar13;
  byte bVar14;
  char *end;
  undefined4 uStack_14;
  
  puVar2 = PTR_optarg_001befe4;
  bVar14 = 0;
  uStack_14 = 0x4f579;
  if (optc == 0x14a) {
    params.emit_stub_syms = 0;
    return 1;
  }
  uVar3 = link_info._4_1_;
  if (optc < 0x14b) {
    if (optc == 0x142) {
      params.no_tls_get_addr_opt = 1;
      return 1;
    }
    if (0x142 < optc) {
      if (optc == 0x146) {
        params.plt_stub_align = 0;
        return 1;
      }
      if (0x146 < optc) {
        if (optc == 0x148) {
          old_got = 1;
          return 1;
        }
        if (optc < 0x149) {
          no_inline_opt = 1;
          return 1;
        }
        params.emit_stub_syms = 1;
        return 1;
      }
      if (optc == 0x144) {
        params.plt_style = PLT_OLD;
        return 1;
      }
      if (optc < 0x145) {
        params.plt_style = PLT_NEW;
        return 1;
      }
      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {
        params.plt_stub_align = 5;
        return 1;
      }
      uVar6 = strtoul(*(char **)PTR_optarg_001befe4,&end,0);
      if ((*end == '\0') && (uVar6 < 6)) {
        params.plt_stub_align = uVar6;
        return 1;
      }
      uVar1 = *(undefined4 *)puVar2;
      pcVar7 = (char *)dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);
      einfo(pcVar7,uVar1);
      params.plt_stub_align = uVar6;
      return 1;
    }
    if (optc == 0xc2) {
      notlsopt = 1;
      params.no_tls_get_addr_opt = 1;
      return 0;
    }
    if (0xc2 < optc) {
      if (optc == 0x12e) {
        link_info._4_4_ = link_info._4_4_ | 0x200;
        return 1;
      }
      if (optc != 0x141) {
        if (optc == 0x12d) {
          link_info._4_4_ = link_info._4_4_ & 0xfffffdff;
          return 1;
        }
        return 0;
      }
      notlsopt = 1;
      return 1;
    }
    if (optc == 0x50) {
      gldelf32lppcsim_append_to_separated_string(&depaudit,*(char **)PTR_optarg_001befe4);
      return 1;
    }
    bVar11 = (uint)optc < 0x7a;
    bVar13 = optc == 0x7a;
    if (!bVar13) {
      return 0;
    }
    iVar8 = 5;
    pbVar4 = *(byte **)PTR_optarg_001befe4;
    pbVar9 = pbVar4;
    pbVar10 = (byte *)0x6ed7c;
    do {
      if (iVar8 == 0) break;
      iVar8 = iVar8 + -1;
      bVar11 = *pbVar9 < *pbVar10;
      bVar13 = *pbVar9 == *pbVar10;
      pbVar9 = pbVar9 + 1;
      pbVar10 = pbVar10 + 1;
    } while (bVar13);
    bVar12 = false;
    bVar11 = (!bVar11 && !bVar13) == bVar11;
    if (bVar11) {
      link_info._2_2_ = link_info._2_2_ | 0x60;
      return 1;
    }
    iVar8 = 7;
    pbVar9 = pbVar4;
    pbVar10 = (byte *)"undefs";
    do {
      if (iVar8 == 0) break;
      iVar8 = iVar8 + -1;
      bVar12 = *pbVar9 < *pbVar10;
      bVar11 = *pbVar9 == *pbVar10;
      pbVar9 = pbVar9 + 1;
      pbVar10 = pbVar10 + 1;
    } while (bVar11);
    bVar13 = false;
    bVar11 = (!bVar12 && !bVar11) == bVar12;
    if (bVar11) {
      link_info._2_2_ = link_info._2_2_ & 0xff9f | 0x20;
      return 1;
    }
    iVar8 = 8;
    pbVar9 = pbVar4;
    pbVar10 = (byte *)"muldefs";
    do {
      if (iVar8 == 0) break;
      iVar8 = iVar8 + -1;
      bVar13 = *pbVar9 < *pbVar10;
      bVar11 = *pbVar9 == *pbVar10;
      pbVar9 = pbVar9 + 1;
      pbVar10 = pbVar10 + 1;
    } while (bVar11);
    bVar12 = false;
    bVar11 = (!bVar13 && !bVar11) == bVar13;
    if (bVar11) {
      link_info._4_4_ = link_info._4_4_ | 0x800;
      return 1;
    }
    iVar8 = 0xe;
    pbVar9 = pbVar4;
    pbVar10 = (byte *)"max-page-size=";
    do {
      if (iVar8 == 0) break;
      iVar8 = iVar8 + -1;
      bVar12 = *pbVar9 < *pbVar10;
      bVar11 = *pbVar9 == *pbVar10;
      pbVar9 = pbVar9 + 1;
      pbVar10 = pbVar10 + 1;
    } while (bVar11);
    bVar13 = false;
    bVar11 = (!bVar12 && !bVar11) == bVar12;
    if (bVar11) {
      config.maxpagesize._0_4_ = strtoul((char *)(pbVar4 + 0xe),&end,0);
      config.maxpagesize._4_4_ = 0;
      if ((*end == '\0') && (((ulong)config.maxpagesize & (ulong)config.maxpagesize - 1) == 0)) {
        config.maxpagesize._4_4_ = 0;
        return 1;
      }
      pcVar5 = "%F%P: invalid maximum page size `%s\'\n";
      pcVar7 = (char *)(*(int *)puVar2 + 0xe);
    }
    else {
      iVar8 = 0x11;
      pbVar9 = pbVar4;
      pbVar10 = (byte *)"common-page-size=";
      do {
        if (iVar8 == 0) break;
        iVar8 = iVar8 + -1;
        bVar13 = *pbVar9 < *pbVar10;
        bVar11 = *pbVar9 == *pbVar10;
        pbVar9 = pbVar9 + 1;
        pbVar10 = pbVar10 + 1;
      } while (bVar11);
      bVar12 = false;
      bVar11 = (!bVar13 && !bVar11) == bVar13;
      if (!bVar11) {
        iVar8 = 0xb;
        pbVar9 = pbVar4;
        pbVar10 = (byte *)"stack-size=";
        do {
          if (iVar8 == 0) break;
          iVar8 = iVar8 + -1;
          bVar12 = *pbVar9 < *pbVar10;
          bVar11 = *pbVar9 == *pbVar10;
          pbVar9 = pbVar9 + 1;
          pbVar10 = pbVar10 + 1;
        } while (bVar11);
        bVar13 = false;
        bVar11 = (!bVar12 && !bVar11) == bVar12;
        if (bVar11) {
          link_info.stacksize._0_4_ = strtoul((char *)(pbVar4 + 0xb),&end,0);
          link_info.stacksize._4_4_ = 0;
          if (*end != '\0') {
            iVar8 = *(int *)puVar2;
            pcVar7 = (char *)dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar4 + 0xb);
            einfo(pcVar7,iVar8 + 0xb);
          }
          if (link_info.stacksize._4_4_ != 0 || (ulong)link_info.stacksize != 0) {
            return 1;
          }
          link_info.stacksize._0_4_ = 0xffffffff;
          link_info.stacksize._4_4_ = 0xffffffff;
          return 1;
        }
        iVar8 = 10;
        pbVar9 = pbVar4;
        pbVar10 = (byte *)0xa55ed;
        do {
          if (iVar8 == 0) break;
          iVar8 = iVar8 + -1;
          bVar13 = *pbVar9 < *pbVar10;
          bVar11 = *pbVar9 == *pbVar10;
          pbVar9 = pbVar9 + 1;
          pbVar10 = pbVar10 + 1;
        } while (bVar11);
        if ((!bVar13 && !bVar11) == bVar13) {
          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x8000;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar4,"noexecstack");
        if (iVar8 == 0) {
          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x10000;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar4,"globalaudit");
        if (iVar8 == 0) {
          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000000;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar4,"global");
        if (iVar8 == 0) {
          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 2;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar4,"initfirst");
        if (iVar8 == 0) {
          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x20;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar4,"interpose");
        if (iVar8 == 0) {
          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x400;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar4,"loadfltr");
        if (iVar8 == 0) {
          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x10;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar4,"nodefaultlib");
        if (iVar8 == 0) {
          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x800;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar4,"nodelete");
        if (iVar8 == 0) {
          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 8;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar4,"nodlopen");
        if (iVar8 == 0) {
          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x40;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar4,"nodump");
        if (iVar8 == 0) {
          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar4,"now");
        if (iVar8 == 0) {
          link_info.flags._0_4_ = (uint)link_info.flags | 8;
          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 1;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar4,"lazy");
        if (iVar8 == 0) {
          link_info.flags._0_4_ = (uint)link_info.flags & 0xfffffff7;
          link_info.flags_1._0_4_ = (uint)link_info.flags_1 & 0xfffffffe;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar4,"origin");
        if (iVar8 == 0) {
          link_info.flags._0_4_ = (uint)link_info.flags | 1;
          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x80;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar4,"combreloc");
        if (iVar8 == 0) {
          link_info._4_4_ = link_info._4_4_ | 0x40;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar4,"nocombreloc");
        if (iVar8 == 0) {
          link_info._4_4_ = link_info._4_4_ & 0xffffffbf;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar4,"nocopyreloc");
        if (iVar8 == 0) {
          link_info._0_1_ = link_info._0_1_ | 8;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar4,"relro");
        if (iVar8 == 0) {
          link_info._2_2_ = link_info._2_2_ | 0x1000;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar4,"norelro");
        if (iVar8 == 0) {
          link_info._2_2_ = link_info._2_2_ & 0xefff;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar4,"separate-code");
        if (iVar8 == 0) {
          link_info._2_2_ = link_info._2_2_ | 0x2000;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar4,"noseparate-code");
        if (iVar8 == 0) {
          link_info._2_2_ = link_info._2_2_ & 0xdfff;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar4,"common");
        if (iVar8 == 0) {
          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 2;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar4,"nocommon");
        if (iVar8 == 0) {
          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 4;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar4,"text");
        if (iVar8 == 0) {
          link_info._4_4_ = link_info._4_4_ | 2;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar4,"notext");
        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar4,"textoff"), iVar8 == 0)) {
          link_info._4_4_ = link_info._4_4_ & 0xfffffffd;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar4,"dynamic-undefined-weak");
        if (iVar8 == 0) {
          link_info.dynamic_undefined_weak = 1;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar4,"nodynamic-undefined-weak");
        if (iVar8 == 0) {
          link_info.dynamic_undefined_weak = 0;
          return 1;
        }
        pcVar7 = "%P: warning: -z %s ignored\n";
LAB_0004fd61:
        pcVar7 = (char *)dcgettext(0,pcVar7,5);
        einfo(pcVar7,pbVar4);
        return 1;
      }
      config.commonpagesize._0_4_ = strtoul((char *)(pbVar4 + 0x11),&end,0);
      config.commonpagesize._4_4_ = 0;
      if ((*end == '\0') && (((ulong)config.commonpagesize & (ulong)config.commonpagesize - 1) == 0)
         ) {
        config.commonpagesize._4_4_ = 0;
        return 1;
      }
      pcVar5 = "%F%P: invalid common page size `%s\'\n";
      pcVar7 = (char *)(*(int *)puVar2 + 0x11);
    }
  }
  else {
    if (optc == 0x192) {
      link_info._2_2_ = link_info._2_2_ | 0x1e0;
      link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 4;
      return 1;
    }
    if (0x192 < optc) {
      if (optc == 0x196) {
        pbVar4 = *(byte **)PTR_optarg_001befe4;
        iVar8 = 5;
        bVar11 = false;
        bVar13 = (link_info._4_4_ & 0xf3) == 0;
        link_info._4_4_ = link_info._4_4_ & 0xfffffff3;
        pbVar9 = pbVar4;
        pbVar10 = &DAT_000a55a5;
        do {
          if (iVar8 == 0) break;
          iVar8 = iVar8 + -1;
          bVar11 = *pbVar9 < *pbVar10;
          bVar13 = *pbVar9 == *pbVar10;
          pbVar9 = pbVar9 + 1;
          pbVar10 = pbVar10 + 1;
        } while (bVar13);
        bVar12 = false;
        bVar11 = (!bVar11 && !bVar13) == bVar11;
        if (bVar11) {
          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 4;
          return 1;
        }
        iVar8 = 4;
        pbVar9 = pbVar4;
        pbVar10 = &DAT_000a5597;
        do {
          if (iVar8 == 0) break;
          iVar8 = iVar8 + -1;
          bVar12 = *pbVar9 < *pbVar10;
          bVar11 = *pbVar9 == *pbVar10;
          pbVar9 = pbVar9 + 1;
          pbVar10 = pbVar10 + 1;
        } while (bVar11);
        bVar13 = false;
        bVar11 = (!bVar12 && !bVar11) == bVar12;
        if (bVar11) {
          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 8;
          return 1;
        }
        iVar8 = 5;
        pbVar9 = pbVar4;
        pbVar10 = &DAT_000a55aa;
        do {
          if (iVar8 == 0) break;
          iVar8 = iVar8 + -1;
          bVar13 = *pbVar9 < *pbVar10;
          bVar11 = *pbVar9 == *pbVar10;
          pbVar9 = pbVar9 + 1;
          pbVar10 = pbVar10 + 1;
        } while (bVar11);
        if ((!bVar13 && !bVar11) == bVar13) {
          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 0xc;
          return 1;
        }
        pcVar7 = "%F%P: invalid hash style `%s\'\n";
        goto LAB_0004fd61;
      }
      if (optc < 0x197) {
        if (optc == 0x194) {
          link_info._2_2_ = link_info._2_2_ & 0x3fff;
          return 1;
        }
        if (optc < 0x195) {
          link_info._2_2_ = link_info._2_2_ & 0x3fff | 0x4000;
          return 1;
        }
        add_excluded_libs(*(char **)PTR_optarg_001befe4);
        return 1;
      }
      if (optc == 0x198) {
        gldelf32lppcsim_append_to_separated_string(&audit,*(char **)PTR_optarg_001befe4);
        return 1;
      }
      if (optc < 0x198) {
        if (emit_note_gnu_build_id != (char *)0x0) {
          free(emit_note_gnu_build_id);
          emit_note_gnu_build_id = (char *)0x0;
        }
        pbVar4 = *(byte **)PTR_optarg_001befe4;
        bVar11 = false;
        bVar13 = pbVar4 == (byte *)0x0;
        if (bVar13) {
          pbVar4 = &DAT_000732c8;
          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;
        }
        else {
          iVar8 = 5;
          pbVar9 = pbVar4;
          pbVar10 = (byte *)0x6ebed;
          do {
            if (iVar8 == 0) break;
            iVar8 = iVar8 + -1;
            bVar11 = *pbVar9 < *pbVar10;
            bVar13 = *pbVar9 == *pbVar10;
            pbVar9 = pbVar9 + (uint)bVar14 * -2 + 1;
            pbVar10 = pbVar10 + (uint)bVar14 * -2 + 1;
          } while (bVar13);
          if ((!bVar11 && !bVar13) == bVar11) {
            return 1;
          }
        }
        emit_note_gnu_build_id = (char *)xstrdup(pbVar4);
        return 1;
      }
      if (optc != 0x199) {
        return 0;
      }
      pcVar7 = *(char **)PTR_optarg_001befe4;
      iVar8 = strcasecmp(pcVar7,"none");
      if (iVar8 == 0) {
        link_info.compress_debug = COMPRESS_DEBUG_NONE;
        return 1;
      }
      iVar8 = strcasecmp(pcVar7,"zlib");
      if (iVar8 != 0) {
        iVar8 = strcasecmp(pcVar7,"zlib-gnu");
        if (iVar8 == 0) {
          link_info.compress_debug = COMPRESS_DEBUG_GNU_ZLIB;
          return 1;
        }
        iVar8 = strcasecmp(pcVar7,"zlib-gabi");
        if (iVar8 != 0) {
          pcVar5 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";
          goto LAB_0004f9a8;
        }
      }
      link_info.compress_debug = COMPRESS_DEBUG_GABI_ZLIB;
      return 1;
    }
    if (optc == 0x14d) {
      params.pic_fixup = -1;
      return 1;
    }
    if (0x14d < optc) {
      if (optc == 400) {
        link_info._4_4_ = link_info._4_4_ & 0xfffffeff;
        return 1;
      }
      if (optc < 0x191) {
        if (optc == 0x14e) {
          params.vle_reloc_fixup = 1;
          return 1;
        }
        return 0;
      }
      link_info._4_4_ = link_info._4_4_ | 0x100;
      return 1;
    }
    if (optc != 0x14b) {
      if (optc == 0x14c) {
        params.ppc476_workaround = 0;
        return 1;
      }
      return 0;
    }
    params.ppc476_workaround = 1;
    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {
      params.ppc476_workaround = 1;
      return 1;
    }
    params.pagesize._0_4_ = strtoul(*(char **)PTR_optarg_001befe4,&end,0);
    params.pagesize._4_4_ = 0;
    if (((*end == '\0') &&
        (iVar8 = ((ulong)params.pagesize != 0) - 1,
        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < (ulong)params.pagesize - 1))) &&
       (((ulong)params.pagesize - 1 & (ulong)params.pagesize) == 0)) {
      params.pagesize._4_4_ = 0;
      return 1;
    }
    pcVar7 = *(char **)puVar2;
    pcVar5 = "%F%P: invalid pagesize `%s\'\n";
  }
LAB_0004f9a8:
  pcVar5 = (char *)dcgettext(0,pcVar5,5);
  einfo(pcVar5,pcVar7);
  return 1;
}



/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */

undefined4 FUN_0004f570(uint param_1)

{
  undefined *puVar1;
  undefined1 uVar2;
  byte *pbVar3;
  char *pcVar4;
  ulong uVar5;
  undefined4 uVar6;
  undefined4 uVar7;
  int iVar8;
  byte *pbVar9;
  char *pcVar10;
  byte *pbVar11;
  bool bVar12;
  bool bVar13;
  bool bVar14;
  byte bVar15;
  char *local_20 [3];
  undefined4 uStack_14;
  
  puVar1 = PTR_optarg_001befe4;
  bVar15 = 0;
  uStack_14 = 0x4f579;
  if (param_1 == 0x14a) {
    DAT_001bfd28 = 0;
    return 1;
  }
  uVar2 = DAT_001c0e24;
  if ((int)param_1 < 0x14b) {
    if (param_1 == 0x142) {
      DAT_001bfd2c = 1;
      return 1;
    }
    if (0x142 < (int)param_1) {
      if (param_1 == 0x146) {
        DAT_001bfd24 = 0;
        return 1;
      }
      if (0x146 < (int)param_1) {
        if (param_1 == 0x148) {
          DAT_001c0b24 = 1;
          return 1;
        }
        if ((int)param_1 < 0x149) {
          DAT_001c0b28 = 1;
          return 1;
        }
        DAT_001bfd28 = 1;
        return 1;
      }
      if (param_1 == 0x144) {
        DAT_001bfd20 = 1;
        return 1;
      }
      if ((int)param_1 < 0x145) {
        DAT_001bfd20 = 2;
        return 1;
      }
      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {
        DAT_001bfd24 = 5;
        return 1;
      }
      uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);
      if ((*local_20[0] == '\0') && (uVar5 < 6)) {
        DAT_001bfd24 = uVar5;
        return 1;
      }
      uVar7 = *(undefined4 *)puVar1;
      uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);
      FUN_00034d60(uVar6,uVar7);
      DAT_001bfd24 = uVar5;
      return 1;
    }
    if (param_1 == 0xc2) {
      DAT_001c0b2c = 1;
      DAT_001bfd2c = 1;
      return 0;
    }
    if (0xc2 < (int)param_1) {
      if (param_1 == 0x12e) {
        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;
        return 1;
      }
      if (param_1 != 0x141) {
        if (param_1 == 0x12d) {
          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;
          return 1;
        }
        return 0;
      }
      DAT_001c0b2c = 1;
      return 1;
    }
    if (param_1 == 0x50) {
      FUN_0004f470();
      return 1;
    }
    bVar12 = param_1 < 0x7a;
    bVar14 = param_1 == 0x7a;
    if (!bVar14) {
      return 0;
    }
    iVar8 = 5;
    pbVar3 = *(byte **)PTR_optarg_001befe4;
    pbVar9 = pbVar3;
    pbVar11 = (byte *)0x6ed7c;
    do {
      if (iVar8 == 0) break;
      iVar8 = iVar8 + -1;
      bVar12 = *pbVar9 < *pbVar11;
      bVar14 = *pbVar9 == *pbVar11;
      pbVar9 = pbVar9 + 1;
      pbVar11 = pbVar11 + 1;
    } while (bVar14);
    bVar13 = false;
    bVar12 = (!bVar12 && !bVar14) == bVar12;
    if (bVar12) {
      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60;
      return 1;
    }
    iVar8 = 7;
    pbVar9 = pbVar3;
    pbVar11 = (byte *)"undefs";
    do {
      if (iVar8 == 0) break;
      iVar8 = iVar8 + -1;
      bVar13 = *pbVar9 < *pbVar11;
      bVar12 = *pbVar9 == *pbVar11;
      pbVar9 = pbVar9 + 1;
      pbVar11 = pbVar11 + 1;
    } while (bVar12);
    bVar14 = false;
    bVar12 = (!bVar13 && !bVar12) == bVar13;
    if (bVar12) {
      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20;
      return 1;
    }
    iVar8 = 8;
    pbVar9 = pbVar3;
    pbVar11 = (byte *)"muldefs";
    do {
      if (iVar8 == 0) break;
      iVar8 = iVar8 + -1;
      bVar14 = *pbVar9 < *pbVar11;
      bVar12 = *pbVar9 == *pbVar11;
      pbVar9 = pbVar9 + 1;
      pbVar11 = pbVar11 + 1;
    } while (bVar12);
    bVar13 = false;
    bVar12 = (!bVar14 && !bVar12) == bVar14;
    if (bVar12) {
      _DAT_001c0e24 = _DAT_001c0e24 | 0x800;
      return 1;
    }
    iVar8 = 0xe;
    pbVar9 = pbVar3;
    pbVar11 = (byte *)"max-page-size=";
    do {
      if (iVar8 == 0) break;
      iVar8 = iVar8 + -1;
      bVar13 = *pbVar9 < *pbVar11;
      bVar12 = *pbVar9 == *pbVar11;
      pbVar9 = pbVar9 + 1;
      pbVar11 = pbVar11 + 1;
    } while (bVar12);
    bVar14 = false;
    bVar12 = (!bVar13 && !bVar12) == bVar13;
    if (bVar12) {
      DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0);
      DAT_001c0f88 = 0;
      if ((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)) {
        DAT_001c0f88 = 0;
        return 1;
      }
      pcVar4 = "%F%P: invalid maximum page size `%s\'\n";
      pcVar10 = (char *)(*(int *)puVar1 + 0xe);
    }
    else {
      iVar8 = 0x11;
      pbVar9 = pbVar3;
      pbVar11 = (byte *)"common-page-size=";
      do {
        if (iVar8 == 0) break;
        iVar8 = iVar8 + -1;
        bVar14 = *pbVar9 < *pbVar11;
        bVar12 = *pbVar9 == *pbVar11;
        pbVar9 = pbVar9 + 1;
        pbVar11 = pbVar11 + 1;
      } while (bVar12);
      bVar13 = false;
      bVar12 = (!bVar14 && !bVar12) == bVar14;
      if (!bVar12) {
        iVar8 = 0xb;
        pbVar9 = pbVar3;
        pbVar11 = (byte *)"stack-size=";
        do {
          if (iVar8 == 0) break;
          iVar8 = iVar8 + -1;
          bVar13 = *pbVar9 < *pbVar11;
          bVar12 = *pbVar9 == *pbVar11;
          pbVar9 = pbVar9 + 1;
          pbVar11 = pbVar11 + 1;
        } while (bVar12);
        bVar14 = false;
        bVar12 = (!bVar13 && !bVar12) == bVar13;
        if (bVar12) {
          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);
          DAT_001c0e34 = 0;
          if (*local_20[0] != '\0') {
            iVar8 = *(int *)puVar1;
            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);
            FUN_00034d60(uVar7,iVar8 + 0xb);
          }
          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {
            return 1;
          }
          DAT_001c0e30 = 0xffffffff;
          DAT_001c0e34 = 0xffffffff;
          return 1;
        }
        iVar8 = 10;
        pbVar9 = pbVar3;
        pbVar11 = (byte *)0xa55ed;
        do {
          if (iVar8 == 0) break;
          iVar8 = iVar8 + -1;
          bVar14 = *pbVar9 < *pbVar11;
          bVar12 = *pbVar9 == *pbVar11;
          pbVar9 = pbVar9 + 1;
          pbVar11 = pbVar11 + 1;
        } while (bVar12);
        if ((!bVar14 && !bVar12) == bVar14) {
          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"noexecstack");
        if (iVar8 == 0) {
          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"globalaudit");
        if (iVar8 == 0) {
          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"global");
        if (iVar8 == 0) {
          DAT_001c0e9c = DAT_001c0e9c | 2;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"initfirst");
        if (iVar8 == 0) {
          DAT_001c0e9c = DAT_001c0e9c | 0x20;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"interpose");
        if (iVar8 == 0) {
          DAT_001c0e9c = DAT_001c0e9c | 0x400;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"loadfltr");
        if (iVar8 == 0) {
          DAT_001c0e9c = DAT_001c0e9c | 0x10;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");
        if (iVar8 == 0) {
          DAT_001c0e9c = DAT_001c0e9c | 0x800;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"nodelete");
        if (iVar8 == 0) {
          DAT_001c0e9c = DAT_001c0e9c | 8;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"nodlopen");
        if (iVar8 == 0) {
          DAT_001c0e9c = DAT_001c0e9c | 0x40;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"nodump");
        if (iVar8 == 0) {
          DAT_001c0e9c = DAT_001c0e9c | 0x1000;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"now");
        if (iVar8 == 0) {
          _DAT_001c0e94 = _DAT_001c0e94 | 8;
          DAT_001c0e9c = DAT_001c0e9c | 1;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"lazy");
        if (iVar8 == 0) {
          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;
          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"origin");
        if (iVar8 == 0) {
          _DAT_001c0e94 = _DAT_001c0e94 | 1;
          DAT_001c0e9c = DAT_001c0e9c | 0x80;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"combreloc");
        if (iVar8 == 0) {
          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"nocombreloc");
        if (iVar8 == 0) {
          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");
        if (iVar8 == 0) {
          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"relro");
        if (iVar8 == 0) {
          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"norelro");
        if (iVar8 == 0) {
          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"separate-code");
        if (iVar8 == 0) {
          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"noseparate-code");
        if (iVar8 == 0) {
          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"common");
        if (iVar8 == 0) {
          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"nocommon");
        if (iVar8 == 0) {
          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"text");
        if (iVar8 == 0) {
          _DAT_001c0e24 = _DAT_001c0e24 | 2;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"notext");
        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {
          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");
        if (iVar8 == 0) {
          DAT_001c0e84 = 1;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");
        if (iVar8 == 0) {
          DAT_001c0e84 = 0;
          return 1;
        }
        pcVar10 = "%P: warning: -z %s ignored\n";
LAB_0004fd61:
        uVar7 = dcgettext(0,pcVar10,5);
        FUN_00034d60(uVar7,pbVar3);
        return 1;
      }
      DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);
      DAT_001c0f90 = 0;
      if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {
        DAT_001c0f90 = 0;
        return 1;
      }
      pcVar4 = "%F%P: invalid common page size `%s\'\n";
      pcVar10 = (char *)(*(int *)puVar1 + 0x11);
    }
  }
  else {
    if (param_1 == 0x192) {
      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;
      DAT_001c0e9c = DAT_001c0e9c | 4;
      return 1;
    }
    if (0x192 < (int)param_1) {
      if (param_1 == 0x196) {
        pbVar3 = *(byte **)PTR_optarg_001befe4;
        iVar8 = 5;
        bVar12 = false;
        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;
        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;
        pbVar9 = pbVar3;
        pbVar11 = &DAT_000a55a5;
        do {
          if (iVar8 == 0) break;
          iVar8 = iVar8 + -1;
          bVar12 = *pbVar9 < *pbVar11;
          bVar14 = *pbVar9 == *pbVar11;
          pbVar9 = pbVar9 + 1;
          pbVar11 = pbVar11 + 1;
        } while (bVar14);
        bVar13 = false;
        bVar12 = (!bVar12 && !bVar14) == bVar12;
        if (bVar12) {
          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;
          return 1;
        }
        iVar8 = 4;
        pbVar9 = pbVar3;
        pbVar11 = &DAT_000a5597;
        do {
          if (iVar8 == 0) break;
          iVar8 = iVar8 + -1;
          bVar13 = *pbVar9 < *pbVar11;
          bVar12 = *pbVar9 == *pbVar11;
          pbVar9 = pbVar9 + 1;
          pbVar11 = pbVar11 + 1;
        } while (bVar12);
        bVar14 = false;
        bVar12 = (!bVar13 && !bVar12) == bVar13;
        if (bVar12) {
          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;
          return 1;
        }
        iVar8 = 5;
        pbVar9 = pbVar3;
        pbVar11 = &DAT_000a55aa;
        do {
          if (iVar8 == 0) break;
          iVar8 = iVar8 + -1;
          bVar14 = *pbVar9 < *pbVar11;
          bVar12 = *pbVar9 == *pbVar11;
          pbVar9 = pbVar9 + 1;
          pbVar11 = pbVar11 + 1;
        } while (bVar12);
        if ((!bVar14 && !bVar12) == bVar14) {
          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;
          return 1;
        }
        pcVar10 = "%F%P: invalid hash style `%s\'\n";
        goto LAB_0004fd61;
      }
      if ((int)param_1 < 0x197) {
        if (param_1 == 0x194) {
          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;
          return 1;
        }
        if ((int)param_1 < 0x195) {
          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;
          return 1;
        }
        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);
        return 1;
      }
      if (param_1 == 0x198) {
        FUN_0004f470();
        return 1;
      }
      if ((int)param_1 < 0x198) {
        if (DAT_001c0aa4 != (void *)0x0) {
          free(DAT_001c0aa4);
          DAT_001c0aa4 = (void *)0x0;
        }
        pbVar3 = *(byte **)PTR_optarg_001befe4;
        bVar12 = false;
        bVar14 = pbVar3 == (byte *)0x0;
        if (bVar14) {
          pbVar3 = &DAT_000732c8;
          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;
        }
        else {
          iVar8 = 5;
          pbVar9 = pbVar3;
          pbVar11 = (byte *)0x6ebed;
          do {
            if (iVar8 == 0) break;
            iVar8 = iVar8 + -1;
            bVar12 = *pbVar9 < *pbVar11;
            bVar14 = *pbVar9 == *pbVar11;
            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;
            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;
          } while (bVar14);
          if ((!bVar12 && !bVar14) == bVar12) {
            return 1;
          }
        }
        DAT_001c0aa4 = (void *)xstrdup(pbVar3);
        return 1;
      }
      if (param_1 != 0x199) {
        return 0;
      }
      pcVar10 = *(char **)PTR_optarg_001befe4;
      iVar8 = strcasecmp(pcVar10,"none");
      if (iVar8 == 0) {
        DAT_001c0e2c = 0;
        return 1;
      }
      iVar8 = strcasecmp(pcVar10,"zlib");
      if (iVar8 != 0) {
        iVar8 = strcasecmp(pcVar10,"zlib-gnu");
        if (iVar8 == 0) {
          DAT_001c0e2c = 3;
          return 1;
        }
        iVar8 = strcasecmp(pcVar10,"zlib-gabi");
        if (iVar8 != 0) {
          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";
          goto LAB_0004f9a8;
        }
      }
      DAT_001c0e2c = 5;
      return 1;
    }
    if (param_1 == 0x14d) {
      DAT_001bfd3c = 0xffffffff;
      return 1;
    }
    if (0x14d < (int)param_1) {
      if (param_1 == 400) {
        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;
        return 1;
      }
      if ((int)param_1 < 0x191) {
        if (param_1 == 0x14e) {
          DAT_001bfd40 = 1;
          return 1;
        }
        return 0;
      }
      _DAT_001c0e24 = _DAT_001c0e24 | 0x100;
      return 1;
    }
    if (param_1 != 0x14b) {
      if (param_1 == 0x14c) {
        DAT_001bfd34 = 0;
        return 1;
      }
      return 0;
    }
    DAT_001bfd34 = 1;
    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {
      DAT_001bfd34 = 1;
      return 1;
    }
    DAT_001bfd44 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);
    DAT_001bfd48 = 0;
    if (((*local_20[0] == '\0') &&
        (iVar8 = (DAT_001bfd44 != 0) - 1,
        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&
       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)) {
      DAT_001bfd48 = 0;
      return 1;
    }
    pcVar10 = *(char **)puVar1;
    pcVar4 = "%F%P: invalid pagesize `%s\'\n";
  }
LAB_0004f9a8:
  uVar7 = dcgettext(0,pcVar4,5);
  FUN_00034d60(uVar7,pcVar10);
  return 1;
}


PUSH EBP
PUSH EDI
PUSH ESI
PUSH EBX
CALL 0x00017bc0
ADD EBX,0x16fa87
SUB ESP,0x2c
MOV EAX,dword ptr [ESP + 0x40]
CMP EAX,0x14a
JZ 0x0004fb10
JG 0x0004f6b0
CMP EAX,0x142
JZ 0x0004faf8
JLE 0x0004f608
CMP EAX,0x146
JZ 0x0004fae0
JLE 0x0004f5e0
CMP EAX,0x148
JZ 0x0004fac8
JG 0x0004fab0
MOV dword ptr [EBX + 0x1b28],0x1
MOV EAX,0x1
ADD ESP,0x2c
POP EBX
POP ESI
POP EDI
POP EBP
RET
CMP EAX,0x144
JZ 0x0004fa98
JG 0x0004fa28
MOV dword ptr [EBX + 0xd20],0x2
MOV EAX,0x1
JMP 0x0004f5d1
CMP EAX,0xc2
JZ 0x0004fa08
JLE 0x0004f640
CMP EAX,0x12e
JZ 0x0004fba0
CMP EAX,0x141
JZ 0x0004fb88
CMP EAX,0x12d
JZ 0x0004f800
XOR EAX,EAX
ADD ESP,0x2c
POP EBX
POP ESI
POP EDI
POP EBP
RET
CMP EAX,0x50
JZ 0x0004f9c8
CMP EAX,0x7a
JNZ 0x0004f636
MOV EAX,dword ptr [EBX + 0xffffffe4]
MOV ECX,0x5
LEA EDI,[EBX + 0xffeafd7c]
MOV EBP,dword ptr [EAX]
MOV dword ptr [ESP + 0xc],EAX
MOV ESI,EBP
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x0004f818
MOV ECX,0x7
LEA EDI,[EBX + 0xffee65af]
MOV ESI,EBP
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JNZ 0x0004fc44
LEA EDX,[EBX + 0x1e20]
MOVZX EAX,byte ptr [EDX + 0x2]
AND EAX,0xffffff9f
OR EAX,0x20
MOV byte ptr [EDX + 0x2],AL
MOV EAX,0x1
JMP 0x0004f5d1
CMP EAX,0x192
JZ 0x0004f9e8
JLE 0x0004f760
CMP EAX,0x196
JZ 0x0004f8c0
JLE 0x0004f7a0
CMP EAX,0x198
JZ 0x0004fbb8
JL 0x0004f850
CMP EAX,0x199
JNZ 0x0004f636
MOV EAX,dword ptr [EBX + 0xffffffe4]
SUB ESP,0x8
MOV ESI,dword ptr [EAX]
LEA EAX,[EBX + 0xffeafbed]
PUSH EAX
PUSH ESI
CALL 0x00016810
ADD ESP,0x10
TEST EAX,EAX
JZ 0x0004f830
SUB ESP,0x8
LEA EAX,[EBX + 0xffee658d]
PUSH EAX
PUSH ESI
CALL 0x00016810
ADD ESP,0x10
TEST EAX,EAX
JZ 0x0004fc20
SUB ESP,0x8
LEA EAX,[EBX + 0xffee6592]
PUSH EAX
PUSH ESI
CALL 0x00016810
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x0004fc9d
LEA EAX,[EBX + 0x1e20]
MOV dword ptr [EAX + 0xc],0x3
MOV EAX,0x1
JMP 0x0004f5d1
CMP EAX,0x14d
JZ 0x0004fb40
JLE 0x0004f7d0
CMP EAX,0x190
JZ 0x0004fb70
JG 0x0004fb58
CMP EAX,0x14e
JNZ 0x0004f636
MOV dword ptr [EBX + 0xd40],0x1
MOV EAX,0x1
JMP 0x0004f5d1
CMP EAX,0x194
JZ 0x0004fb28
JG 0x0004f908
LEA EDX,[EBX + 0x1e20]
MOVZX EAX,byte ptr [EDX + 0x3]
AND EAX,0x3f
OR EAX,0x40
MOV byte ptr [EDX + 0x3],AL
MOV EAX,0x1
JMP 0x0004f5d1
CMP EAX,0x14b
JZ 0x0004f928
CMP EAX,0x14c
JNZ 0x0004f636
MOV dword ptr [EBX + 0xd34],0x0
MOV EAX,0x1
JMP 0x0004f5d1
LEA EAX,[EBX + 0x1e20]
AND byte ptr [EAX + 0x5],0xfd
MOV EAX,0x1
JMP 0x0004f5d1
LEA EAX,[EBX + 0x1e20]
OR byte ptr [EAX + 0x2],0x60
MOV EAX,0x1
JMP 0x0004f5d1
LEA EAX,[EBX + 0x1e20]
MOV dword ptr [EAX + 0xc],0x0
MOV EAX,0x1
JMP 0x0004f5d1
MOV EAX,dword ptr [EBX + 0x1aa4]
TEST EAX,EAX
JZ 0x0004f870
SUB ESP,0xc
PUSH EAX
CALL 0x00016df0
ADD ESP,0x10
MOV dword ptr [EBX + 0x1aa4],0x0
MOV EDX,dword ptr [EBX + 0xffffffe4]
MOV EAX,dword ptr [EDX]
TEST EAX,EAX
JZ 0x0004fc37
MOV ECX,0x5
LEA EDI,[EBX + 0xffeafbed]
MOV ESI,EAX
CMPSB.REPE ES:EDI,ESI
SETA DL
SBB DL,0x0
TEST DL,DL
JZ 0x0004f793
LEA ESI,[ESI]
SUB ESP,0xc
PUSH EAX
CALL 0x00016520
ADD ESP,0x10
MOV dword ptr [EBX + 0x1aa4],EAX
MOV EAX,0x1
JMP 0x0004f5d1
LEA EAX,[EBX + 0x1e20]
MOV ECX,dword ptr [EBX + 0xffffffe4]
LEA EDI,[EBX + 0xffee65a5]
MOVZX EDX,byte ptr [EAX + 0x4]
MOV EBP,dword ptr [ECX]
MOV ECX,0x5
AND EDX,0xfffffff3
MOV ESI,EBP
MOV byte ptr [EAX + 0x4],DL
CMPSB.REPE ES:EDI,ESI
SETA CL
SBB CL,0x0
TEST CL,CL
JNZ 0x0004fbd8
OR EDX,0x4
MOV byte ptr [EAX + 0x4],DL
MOV EAX,0x1
JMP 0x0004f5d1
MOV EAX,dword ptr [EBX + 0xffffffe4]
SUB ESP,0xc
PUSH dword ptr [EAX]
CALL 0x00026b90
ADD ESP,0x10
MOV EAX,0x1
JMP 0x0004f5d1
MOV dword ptr [EBX + 0xd34],0x1
MOV EAX,dword ptr [EBX + 0xffffffe4]
MOV dword ptr [ESP + 0xc],EAX
MOV EAX,dword ptr [EAX]
TEST EAX,EAX
JZ 0x0004f793
SUB ESP,0x4
XOR EDI,EDI
PUSH 0x0
LEA ECX,[ESP + 0x24]
PUSH ECX
PUSH EAX
CALL 0x00016770
ADD ESP,0x10
MOV ECX,dword ptr [ESP + 0x1c]
MOV dword ptr [EBX + 0xd48],EDI
MOV dword ptr [EBX + 0xd44],EAX
MOV EBP,EAX
MOV ESI,EAX
CMP byte ptr [ECX],0x0
JNZ 0x0004f997
ADD EAX,-0x1
MOV ECX,0xffe
MOV EDX,EDI
ADC EDX,-0x1
CMP ECX,EAX
MOV ECX,0x0
SBB ECX,EDX
JNC 0x0004f997
SUB ESI,0x1
TEST ESI,EBP
JZ 0x0004f793
MOV EAX,dword ptr [ESP + 0xc]
SUB ESP,0x4
MOV ESI,dword ptr [EAX]
PUSH 0x5
LEA EAX,[EBX + 0xffee66cf]
PUSH EAX
PUSH 0x0
CALL 0x00016360
POP EDX
POP ECX
PUSH ESI
PUSH EAX
CALL 0x00034d60
ADD ESP,0x10
JMP 0x0004f793
MOV EAX,dword ptr [EBX + 0xffffffe4]
MOV EDX,dword ptr [EAX]
LEA EAX,[EBX + 0x1aa8]
CALL 0x0004f470
MOV EAX,0x1
JMP 0x0004f5d1
LEA EAX,[EBX + 0x1e20]
OR dword ptr [EAX + 0x7c],0x4
OR word ptr [EAX + 0x2],0x1e0
MOV EAX,0x1
JMP 0x0004f5d1
MOV dword ptr [EBX + 0x1b2c],0x1
XOR EAX,EAX
MOV dword ptr [EBX + 0xd2c],0x1
JMP 0x0004f638
MOV EAX,dword ptr [EBX + 0xffffffe4]
MOV dword ptr [ESP + 0xc],EAX
MOV EAX,dword ptr [EAX]
TEST EAX,EAX
JZ 0x0004fc08
SUB ESP,0x4
PUSH 0x0
LEA ECX,[ESP + 0x24]
PUSH ECX
PUSH EAX
CALL 0x00016770
ADD ESP,0x10
MOV ESI,EAX
MOV EAX,dword ptr [ESP + 0x1c]
CMP byte ptr [EAX],0x0
JNZ 0x0004fa5f
CMP ESI,0x5
JBE 0x0004fa84
MOV EAX,dword ptr [ESP + 0xc]
SUB ESP,0x4
MOV EDI,dword ptr [EAX]
LEA EAX,[EBX + 0xffee6144]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x00016360
POP EDX
POP ECX
PUSH EDI
PUSH EAX
CALL 0x00034d60
ADD ESP,0x10
MOV dword ptr [EBX + 0xd24],ESI
MOV EAX,0x1
JMP 0x0004f5d1
MOV dword ptr [EBX + 0xd20],0x1
MOV EAX,0x1
JMP 0x0004f5d1
MOV dword ptr [EBX + 0xd28],0x1
MOV EAX,0x1
JMP 0x0004f5d1
MOV dword ptr [EBX + 0x1b24],0x1
MOV EAX,0x1
JMP 0x0004f5d1
MOV dword ptr [EBX + 0xd24],0x0
MOV EAX,0x1
JMP 0x0004f5d1
MOV dword ptr [EBX + 0xd2c],0x1
MOV EAX,0x1
JMP 0x0004f5d1
MOV dword ptr [EBX + 0xd28],0x0
MOV EAX,0x1
JMP 0x0004f5d1
LEA EAX,[EBX + 0x1e20]
AND byte ptr [EAX + 0x3],0x3f
MOV EAX,0x1
JMP 0x0004f5d1
MOV dword ptr [EBX + 0xd3c],0xffffffff
MOV EAX,0x1
JMP 0x0004f5d1
LEA EAX,[EBX + 0x1e20]
OR byte ptr [EAX + 0x5],0x1
MOV EAX,0x1
JMP 0x0004f5d1
LEA EAX,[EBX + 0x1e20]
AND byte ptr [EAX + 0x5],0xfe
MOV EAX,0x1
JMP 0x0004f5d1
MOV dword ptr [EBX + 0x1b2c],0x1
MOV EAX,0x1
JMP 0x0004f5d1
LEA EAX,[EBX + 0x1e20]
OR byte ptr [EAX + 0x5],0x2
MOV EAX,0x1
JMP 0x0004f5d1
MOV EAX,dword ptr [EBX + 0xffffffe4]
MOV EDX,dword ptr [EAX]
LEA EAX,[EBX + 0x1aac]
CALL 0x0004f470
MOV EAX,0x1
JMP 0x0004f5d1
MOV ECX,0x4
LEA EDI,[EBX + 0xffee6597]
MOV ESI,EBP
CMPSB.REPE ES:EDI,ESI
SETA CL
SBB CL,0x0
TEST CL,CL
JNZ 0x0004fc70
OR EDX,0x8
MOV byte ptr [EAX + 0x4],DL
MOV EAX,0x1
JMP 0x0004f5d1
MOV dword ptr [EBX + 0xd24],0x5
MOV EAX,0x1
JMP 0x0004f5d1
LEA EAX,[EBX + 0x1e20]
MOV dword ptr [EAX + 0xc],0x5
MOV EAX,0x1
JMP 0x0004f5d1
LEA EAX,[EBX + 0xffeb42c8]
MOV dword ptr [EDX],EAX
JMP 0x0004f8a0
MOV ECX,0x8
LEA EDI,[EBX + 0xffee65b6]
MOV ESI,EBP
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JNZ 0x0004fcc8
LEA EAX,[EBX + 0x1e20]
OR byte ptr [EAX + 0x5],0x8
MOV EAX,0x1
JMP 0x0004f5d1
MOV ECX,0x5
LEA EDI,[EBX + 0xffee65aa]
MOV ESI,EBP
CMPSB.REPE ES:EDI,ESI
SETA CL
SBB CL,0x0
TEST CL,CL
JNZ 0x0004fd56
OR EDX,0xc
MOV byte ptr [EAX + 0x4],DL
MOV EAX,0x1
JMP 0x0004f5d1
SUB ESP,0x8
LEA EAX,[EBX + 0xffee659b]
PUSH EAX
PUSH ESI
CALL 0x00016810
ADD ESP,0x10
TEST EAX,EAX
JZ 0x0004fc20
SUB ESP,0x4
LEA EAX,[EBX + 0xffee607c]
PUSH 0x5
JMP 0x0004f9a8
MOV ECX,0xe
LEA EDI,[EBX + 0xffee65be]
MOV ESI,EBP
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x0004fd7f
MOV ECX,0x11
LEA EDI,[EBX + 0xffee65cd]
MOV ESI,EBP
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x0004fdd0
MOV ECX,0xb
LEA EDI,[EBX + 0xffee65df]
MOV ESI,EBP
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x0004fe55
MOV ECX,0xa
LEA EDI,[EBX + 0xffee65ed]
MOV ESI,EBP
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JNZ 0x0004fe1f
LEA EDX,[EBX + 0x1e20]
MOV EAX,dword ptr [EDX + 0x4]
AND EAX,0xfffe7fff
OR AH,0x80
MOV dword ptr [EDX + 0x4],EAX
MOV EAX,0x1
JMP 0x0004f5d1
SUB ESP,0x4
LEA EAX,[EBX + 0xffee60b4]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x00016360
POP ESI
POP EDI
PUSH EBP
PUSH EAX
CALL 0x00034d60
ADD ESP,0x10
MOV EAX,0x1
JMP 0x0004f5d1
SUB ESP,0x4
ADD EBP,0xe
XOR EDI,EDI
PUSH 0x0
LEA EAX,[ESP + 0x24]
PUSH EAX
PUSH EBP
CALL 0x00016770
LEA ECX,[EBX + 0x1f20]
ADD ESP,0x10
MOV ESI,EAX
MOV dword ptr [ECX + 0x64],EAX
MOV dword ptr [ECX + 0x68],EDI
MOV ECX,dword ptr [ESP + 0x1c]
CMP byte ptr [ECX],0x0
JNZ 0x0004fdb9
ADD ESI,-0x1
TEST EAX,ESI
JZ 0x0004f793
MOV EAX,dword ptr [ESP + 0xc]
MOV ESI,dword ptr [EAX]
PUSH EDI
LEA EAX,[EBX + 0xffee60d4]
PUSH 0x5
ADD ESI,0xe
JMP 0x0004f9a8
PUSH EAX
ADD EBP,0x11
XOR EDI,EDI
PUSH 0x0
LEA EAX,[ESP + 0x24]
PUSH EAX
PUSH EBP
CALL 0x00016770
LEA ECX,[EBX + 0x1f20]
ADD ESP,0x10
MOV ESI,EAX
MOV dword ptr [ECX + 0x6c],EAX
MOV dword ptr [ECX + 0x70],EDI
MOV ECX,dword ptr [ESP + 0x1c]
CMP byte ptr [ECX],0x0
JNZ 0x0004fe08
ADD ESI,-0x1
TEST EAX,ESI
JZ 0x0004f793
MOV EAX,dword ptr [ESP + 0xc]
MOV ESI,dword ptr [EAX]
PUSH EDI
LEA EAX,[EBX + 0xffee60fc]
PUSH 0x5
ADD ESI,0x11
JMP 0x0004f9a8
LEA EAX,[EBX + 0xffee65eb]
PUSH ECX
PUSH ECX
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x0004fea1
LEA EDX,[EBX + 0x1e20]
MOV EAX,dword ptr [EDX + 0x4]
AND EAX,0xfffe7fff
OR EAX,0x10000
MOV dword ptr [EDX + 0x4],EAX
MOV EAX,0x1
JMP 0x0004f5d1
PUSH ESI
ADD EBP,0xb
PUSH 0x0
LEA EAX,[ESP + 0x24]
PUSH EAX
PUSH EBP
CALL 0x00016770
LEA ESI,[EBX + 0x1e20]
ADD ESP,0x10
MOV dword ptr [ESI + 0x10],EAX
MOV EAX,dword ptr [ESP + 0x1c]
MOV dword ptr [ESI + 0x14],0x0
CMP byte ptr [EAX],0x0
JNZ 0x0004fece
MOV EAX,dword ptr [ESI + 0x14]
OR EAX,dword ptr [ESI + 0x10]
JNZ 0x0004f793
MOV dword ptr [ESI + 0x10],0xffffffff
MOV dword ptr [ESI + 0x14],0xffffffff
JMP 0x0004f793
LEA EAX,[EBX + 0xffee65f7]
PUSH EDX
PUSH EDX
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x0004fef6
LEA EAX,[EBX + 0x1e20]
OR dword ptr [EAX + 0x7c],0x1000000
MOV EAX,0x1
JMP 0x0004f5d1
MOV EAX,dword ptr [ESP + 0xc]
MOV EDI,dword ptr [EAX]
LEA EAX,[EBX + 0xffee6124]
PUSH EBP
PUSH 0x5
PUSH EAX
ADD EDI,0xb
PUSH 0x0
CALL 0x00016360
POP EDX
POP ECX
PUSH EDI
PUSH EAX
CALL 0x00034d60
ADD ESP,0x10
JMP 0x0004fe82
PUSH EAX
PUSH EAX
LEA EAX,[EBX + 0xffea2129]
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x0004ff20
LEA EAX,[EBX + 0x1e20]
OR dword ptr [EAX + 0x7c],0x2
MOV EAX,0x1
JMP 0x0004f5d1
PUSH EAX
PUSH EAX
LEA EAX,[EBX + 0xffee6603]
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x0004ff4a
LEA EAX,[EBX + 0x1e20]
OR dword ptr [EAX + 0x7c],0x20
MOV EAX,0x1
JMP 0x0004f5d1
PUSH EAX
PUSH EAX
LEA EAX,[EBX + 0xffee660d]
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x0004ff77
LEA EAX,[EBX + 0x1e20]
OR dword ptr [EAX + 0x7c],0x400
MOV EAX,0x1
JMP 0x0004f5d1
PUSH EAX
PUSH EAX
LEA EAX,[EBX + 0xffee6617]
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x0004ffa1
LEA EAX,[EBX + 0x1e20]
OR dword ptr [EAX + 0x7c],0x10
MOV EAX,0x1
JMP 0x0004f5d1
PUSH EAX
PUSH EAX
LEA EAX,[EBX + 0xffee6620]
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x0004ffce
LEA EAX,[EBX + 0x1e20]
OR dword ptr [EAX + 0x7c],0x800
MOV EAX,0x1
JMP 0x0004f5d1
PUSH EAX
PUSH EAX
LEA EAX,[EBX + 0xffee662d]
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x0004fff8
LEA EAX,[EBX + 0x1e20]
OR dword ptr [EAX + 0x7c],0x8
MOV EAX,0x1
JMP 0x0004f5d1
LEA EAX,[EBX + 0xffee6636]
PUSH EDI
PUSH EDI
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00050022
LEA EAX,[EBX + 0x1e20]
OR dword ptr [EAX + 0x7c],0x40
MOV EAX,0x1
JMP 0x0004f5d1
LEA EAX,[EBX + 0xffee663f]
PUSH ESI
PUSH ESI
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x0005004f
LEA EAX,[EBX + 0x1e20]
OR dword ptr [EAX + 0x7c],0x1000
MOV EAX,0x1
JMP 0x0004f5d1
LEA EAX,[EBX + 0xffea200e]
PUSH ECX
PUSH ECX
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x0005007d
LEA EAX,[EBX + 0x1e20]
OR dword ptr [EAX + 0x74],0x8
OR dword ptr [EAX + 0x7c],0x1
MOV EAX,0x1
JMP 0x0004f5d1
LEA EAX,[EBX + 0xffee6646]
PUSH EDX
PUSH EDX
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x000500ab
LEA EAX,[EBX + 0x1e20]
AND dword ptr [EAX + 0x74],0xfffffff7
AND dword ptr [EAX + 0x7c],0xfffffffe
MOV EAX,0x1
JMP 0x0004f5d1
PUSH EAX
PUSH EAX
LEA EAX,[EBX + 0xffee664b]
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x000500dc
LEA EAX,[EBX + 0x1e20]
OR dword ptr [EAX + 0x74],0x1
OR dword ptr [EAX + 0x7c],0x80
MOV EAX,0x1
JMP 0x0004f5d1
PUSH EAX
PUSH EAX
LEA EAX,[EBX + 0xffee6654]
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00050106
LEA EAX,[EBX + 0x1e20]
OR byte ptr [EAX + 0x4],0x40
MOV EAX,0x1
JMP 0x0004f5d1
PUSH EAX
PUSH EAX
LEA EAX,[EBX + 0xffee6652]
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00050130
LEA EAX,[EBX + 0x1e20]
AND byte ptr [EAX + 0x4],0xbf
MOV EAX,0x1
JMP 0x0004f5d1
PUSH EAX
PUSH EAX
LEA EAX,[EBX + 0xffee665e]
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00050159
LEA EAX,[EBX + 0x1e20]
OR byte ptr [EAX],0x8
MOV EAX,0x1
JMP 0x0004f5d1
PUSH EAX
PUSH EAX
LEA EAX,[EBX + 0xffee666c]
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00050183
LEA EAX,[EBX + 0x1e20]
OR byte ptr [EAX + 0x3],0x10
MOV EAX,0x1
JMP 0x0004f5d1
PUSH EAX
PUSH EAX
LEA EAX,[EBX + 0xffee666a]
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x000501ad
LEA EAX,[EBX + 0x1e20]
AND byte ptr [EAX + 0x3],0xef
MOV EAX,0x1
JMP 0x0004f5d1
LEA EAX,[EBX + 0xffee6674]
PUSH EDI
PUSH EDI
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x000501d7
LEA EAX,[EBX + 0x1e20]
OR byte ptr [EAX + 0x3],0x20
MOV EAX,0x1
JMP 0x0004f5d1
LEA EAX,[EBX + 0xffee6672]
PUSH ESI
PUSH ESI
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00050201
LEA EAX,[EBX + 0x1e20]
AND byte ptr [EAX + 0x3],0xdf
MOV EAX,0x1
JMP 0x0004f5d1
LEA EAX,[EBX + 0xffeafe93]
PUSH ECX
PUSH ECX
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00050234
LEA EDX,[EBX + 0x1e20]
MOVZX EAX,byte ptr [EDX + 0x2]
AND EAX,0xfffffff9
OR EAX,0x2
MOV byte ptr [EDX + 0x2],AL
MOV EAX,0x1
JMP 0x0004f5d1
LEA EAX,[EBX + 0xffee6682]
PUSH EDX
PUSH EDX
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00050267
LEA EDX,[EBX + 0x1e20]
MOVZX EAX,byte ptr [EDX + 0x2]
AND EAX,0xfffffff9
OR EAX,0x4
MOV byte ptr [EDX + 0x2],AL
MOV EAX,0x1
JMP 0x0004f5d1
PUSH EAX
PUSH EAX
LEA EAX,[EBX + 0xffeaf64f]
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00050291
LEA EAX,[EBX + 0x1e20]
OR byte ptr [EAX + 0x4],0x2
MOV EAX,0x1
JMP 0x0004f5d1
PUSH EAX
PUSH EAX
LEA EAX,[EBX + 0xffee668b]
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x000502bb
LEA EAX,[EBX + 0x1e20]
AND byte ptr [EAX + 0x4],0xfd
MOV EAX,0x1
JMP 0x0004f5d1
PUSH EAX
PUSH EAX
LEA EAX,[EBX + 0xffee6692]
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JZ 0x000502a7
PUSH EAX
PUSH EAX
LEA EAX,[EBX + 0xffee669c]
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x000502fe
LEA EAX,[EBX + 0x1e20]
MOV dword ptr [EAX + 0x64],0x1
MOV EAX,0x1
JMP 0x0004f5d1
PUSH EAX
PUSH EAX
LEA EAX,[EBX + 0xffee669a]
PUSH EAX
PUSH EBP
CALL 0x000160d0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x0005032b
LEA EAX,[EBX + 0x1e20]
MOV dword ptr [EAX + 0x64],0x0
MOV EAX,0x1
JMP 0x0004f5d1
PUSH EAX
LEA EAX,[EBX + 0xffee66b3]
PUSH 0x5
JMP 0x0004fd61
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */\n\nundefined4 FUN_0004f570(uint param_1)\n\n{\n  undefined *puVar1;\n  undefined1 uVar2;\n  byte *pbVar3;\n  char *pcVar4;\n  ulong uVar5;\n  undefined4 uVar6;\n  undefined4 uVar7;\n  int iVar8;\n  byte *pbVar9;\n  char *pcVar10;\n  byte *pbVar11;\n  bool bVar12;\n  bool bVar13;\n  bool bVar14;\n  byte bVar15;\n  char *local_20 [3];\n  undefined4 uStack_14;\n  \n  puVar1 = PTR_optarg_001befe4;\n  bVar15 = 0;\n  uStack_14 = 0x4f579;\n  if (param_1 == 0x14a) {\n    DAT_001bfd28 = 0;\n    return 1;\n  }\n  uVar2 = DAT_001c0e24;\n  if ((int)param_1 < 0x14b) {\n    if (param_1 == 0x142) {\n      DAT_001bfd2c = 1;\n      return 1;\n    }\n    if (0x142 < (int)param_1) {\n      if (param_1 == 0x146) {\n        DAT_001bfd24 = 0;\n        return 1;\n      }\n      if (0x146 < (int)param_1) {\n        if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }\n        if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }\n        DAT_001bfd28 = 1;\n        return 1;\n      }\n      if (param_1 == 0x144) {\n        DAT_001bfd20 = 1;\n        return 1;\n      }\n      if ((int)param_1 < 0x145) {\n        DAT_001bfd20 = 2;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        DAT_001bfd24 = 5;\n        return 1;\n      }\n      uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n      if ((*local_20[0] == '\0') && (uVar5 < 6)) {\n        DAT_001bfd24 = uVar5;\n        return 1;\n      }\n      uVar7 = *(undefined4 *)puVar1;\n      uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      FUN_00034d60(uVar6,uVar7);\n      DAT_001bfd24 = uVar5;\n      return 1;\n    }\n    if (param_1 == 0xc2) {\n      DAT_001c0b2c = 1;\n      DAT_001bfd2c = 1;\n      return 0;\n    }\n    if (0xc2 < (int)param_1) {\n      if (param_1 == 0x12e) {\n        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;\n        return 1;\n      }\n      if (param_1 != 0x141) {\n        if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      DAT_001c0b2c = 1;\n      return 1;\n    }\n    if (param_1 == 0x50) {\n      FUN_0004f470();\n      return 1;\n    }\n    bVar12 = param_1 < 0x7a;\n    bVar14 = param_1 == 0x7a;\n    if (!bVar14) {\n      return 0;\n    }\n    iVar8 = 5;\n    pbVar3 = *(byte **)PTR_optarg_001befe4;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)0x6ed7c;\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar11;\n      bVar14 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar14);\n    bVar13 = false;\n    bVar12 = (!bVar12 && !bVar14) == bVar12;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60;\n      return 1;\n    }\n    iVar8 = 7;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"undefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }\n    iVar8 = 8;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"muldefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar14 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar13 = false;\n    bVar12 = (!bVar14 && !bVar12) == bVar14;\n    if (bVar12) {\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x800;\n      return 1;\n    }\n    iVar8 = 0xe;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"max-page-size=";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0);\n      DAT_001c0f88 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)) {\n        DAT_001c0f88 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0xe);\n    }\n    else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar3;\n      pbVar11 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      } while (bVar12);\n      bVar13 = false;\n      bVar12 = (!bVar14 && !bVar12) == bVar14;\n      if (!bVar12) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }\n      DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);\n      DAT_001c0f90 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {\n        DAT_001c0f90 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid common page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0x11);\n    }\n  }\n  else {\n    if (param_1 == 0x192) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;\n      DAT_001c0e9c = DAT_001c0e9c | 4;\n      return 1;\n    }\n    if (0x192 < (int)param_1) {\n      if (param_1 == 0x196) {\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if ((int)param_1 < 0x197) {\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (param_1 == 0x198) {\n        FUN_0004f470();\n        return 1;\n      }\n      if ((int)param_1 < 0x198) {\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }\n      if (param_1 != 0x199) {\n        return 0;\n      }\n      pcVar10 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar10,"none");\n      if (iVar8 == 0) {\n        DAT_001c0e2c = 0;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar10,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      DAT_001c0e2c = 5;\n      return 1;\n    }\n    if (param_1 == 0x14d) {\n      DAT_001bfd3c = 0xffffffff;\n      return 1;\n    }\n    if (0x14d < (int)param_1) {\n      if (param_1 == 400) {\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }\n      if ((int)param_1 < 0x191) {\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x100;\n      return 1;\n    }\n    if (param_1 != 0x14b) {\n      if (param_1 == 0x14c) {\n        DAT_001bfd34 = 0;\n        return 1;\n      }\n      return 0;\n    }\n    DAT_001bfd34 = 1;\n    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      DAT_001bfd34 = 1;\n      return 1;\n    }\n    DAT_001bfd44 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n    DAT_001bfd48 = 0;\n    if (((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&\n       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)) {\n      DAT_001bfd48 = 0;\n      return 1;\n    }\n    pcVar10 = *(char **)puVar1;\n    pcVar4 = "%F%P: invalid pagesize `%s\'\n";\n  }\nLAB_0004f9a8:\n  uVar7 = dcgettext(0,pcVar4,5);\n  FUN_00034d60(uVar7,pcVar10);\n  return 1;\n}\n\n" comment comment (function_definition "undefined4 FUN_0004f570(uint param_1)\n\n{\n  undefined *puVar1;\n  undefined1 uVar2;\n  byte *pbVar3;\n  char *pcVar4;\n  ulong uVar5;\n  undefined4 uVar6;\n  undefined4 uVar7;\n  int iVar8;\n  byte *pbVar9;\n  char *pcVar10;\n  byte *pbVar11;\n  bool bVar12;\n  bool bVar13;\n  bool bVar14;\n  byte bVar15;\n  char *local_20 [3];\n  undefined4 uStack_14;\n  \n  puVar1 = PTR_optarg_001befe4;\n  bVar15 = 0;\n  uStack_14 = 0x4f579;\n  if (param_1 == 0x14a) {\n    DAT_001bfd28 = 0;\n    return 1;\n  }\n  uVar2 = DAT_001c0e24;\n  if ((int)param_1 < 0x14b) {\n    if (param_1 == 0x142) {\n      DAT_001bfd2c = 1;\n      return 1;\n    }\n    if (0x142 < (int)param_1) {\n      if (param_1 == 0x146) {\n        DAT_001bfd24 = 0;\n        return 1;\n      }\n      if (0x146 < (int)param_1) {\n        if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }\n        if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }\n        DAT_001bfd28 = 1;\n        return 1;\n      }\n      if (param_1 == 0x144) {\n        DAT_001bfd20 = 1;\n        return 1;\n      }\n      if ((int)param_1 < 0x145) {\n        DAT_001bfd20 = 2;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        DAT_001bfd24 = 5;\n        return 1;\n      }\n      uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n      if ((*local_20[0] == '\0') && (uVar5 < 6)) {\n        DAT_001bfd24 = uVar5;\n        return 1;\n      }\n      uVar7 = *(undefined4 *)puVar1;\n      uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      FUN_00034d60(uVar6,uVar7);\n      DAT_001bfd24 = uVar5;\n      return 1;\n    }\n    if (param_1 == 0xc2) {\n      DAT_001c0b2c = 1;\n      DAT_001bfd2c = 1;\n      return 0;\n    }\n    if (0xc2 < (int)param_1) {\n      if (param_1 == 0x12e) {\n        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;\n        return 1;\n      }\n      if (param_1 != 0x141) {\n        if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      DAT_001c0b2c = 1;\n      return 1;\n    }\n    if (param_1 == 0x50) {\n      FUN_0004f470();\n      return 1;\n    }\n    bVar12 = param_1 < 0x7a;\n    bVar14 = param_1 == 0x7a;\n    if (!bVar14) {\n      return 0;\n    }\n    iVar8 = 5;\n    pbVar3 = *(byte **)PTR_optarg_001befe4;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)0x6ed7c;\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar11;\n      bVar14 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar14);\n    bVar13 = false;\n    bVar12 = (!bVar12 && !bVar14) == bVar12;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60;\n      return 1;\n    }\n    iVar8 = 7;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"undefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }\n    iVar8 = 8;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"muldefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar14 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar13 = false;\n    bVar12 = (!bVar14 && !bVar12) == bVar14;\n    if (bVar12) {\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x800;\n      return 1;\n    }\n    iVar8 = 0xe;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"max-page-size=";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0);\n      DAT_001c0f88 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)) {\n        DAT_001c0f88 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0xe);\n    }\n    else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar3;\n      pbVar11 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      } while (bVar12);\n      bVar13 = false;\n      bVar12 = (!bVar14 && !bVar12) == bVar14;\n      if (!bVar12) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }\n      DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);\n      DAT_001c0f90 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {\n        DAT_001c0f90 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid common page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0x11);\n    }\n  }\n  else {\n    if (param_1 == 0x192) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;\n      DAT_001c0e9c = DAT_001c0e9c | 4;\n      return 1;\n    }\n    if (0x192 < (int)param_1) {\n      if (param_1 == 0x196) {\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if ((int)param_1 < 0x197) {\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (param_1 == 0x198) {\n        FUN_0004f470();\n        return 1;\n      }\n      if ((int)param_1 < 0x198) {\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }\n      if (param_1 != 0x199) {\n        return 0;\n      }\n      pcVar10 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar10,"none");\n      if (iVar8 == 0) {\n        DAT_001c0e2c = 0;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar10,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      DAT_001c0e2c = 5;\n      return 1;\n    }\n    if (param_1 == 0x14d) {\n      DAT_001bfd3c = 0xffffffff;\n      return 1;\n    }\n    if (0x14d < (int)param_1) {\n      if (param_1 == 400) {\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }\n      if ((int)param_1 < 0x191) {\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x100;\n      return 1;\n    }\n    if (param_1 != 0x14b) {\n      if (param_1 == 0x14c) {\n        DAT_001bfd34 = 0;\n        return 1;\n      }\n      return 0;\n    }\n    DAT_001bfd34 = 1;\n    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      DAT_001bfd34 = 1;\n      return 1;\n    }\n    DAT_001bfd44 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n    DAT_001bfd48 = 0;\n    if (((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&\n       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)) {\n      DAT_001bfd48 = 0;\n      return 1;\n    }\n    pcVar10 = *(char **)puVar1;\n    pcVar4 = "%F%P: invalid pagesize `%s\'\n";\n  }\nLAB_0004f9a8:\n  uVar7 = dcgettext(0,pcVar4,5);\n  FUN_00034d60(uVar7,pcVar10);\n  return 1;\n}" type_identifier (function_declarator "FUN_0004f570(uint param_1)" identifier (parameter_list "(uint param_1)" ( (parameter_declaration "uint param_1" type_identifier identifier) ))) (compound_statement "{\n  undefined *puVar1;\n  undefined1 uVar2;\n  byte *pbVar3;\n  char *pcVar4;\n  ulong uVar5;\n  undefined4 uVar6;\n  undefined4 uVar7;\n  int iVar8;\n  byte *pbVar9;\n  char *pcVar10;\n  byte *pbVar11;\n  bool bVar12;\n  bool bVar13;\n  bool bVar14;\n  byte bVar15;\n  char *local_20 [3];\n  undefined4 uStack_14;\n  \n  puVar1 = PTR_optarg_001befe4;\n  bVar15 = 0;\n  uStack_14 = 0x4f579;\n  if (param_1 == 0x14a) {\n    DAT_001bfd28 = 0;\n    return 1;\n  }\n  uVar2 = DAT_001c0e24;\n  if ((int)param_1 < 0x14b) {\n    if (param_1 == 0x142) {\n      DAT_001bfd2c = 1;\n      return 1;\n    }\n    if (0x142 < (int)param_1) {\n      if (param_1 == 0x146) {\n        DAT_001bfd24 = 0;\n        return 1;\n      }\n      if (0x146 < (int)param_1) {\n        if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }\n        if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }\n        DAT_001bfd28 = 1;\n        return 1;\n      }\n      if (param_1 == 0x144) {\n        DAT_001bfd20 = 1;\n        return 1;\n      }\n      if ((int)param_1 < 0x145) {\n        DAT_001bfd20 = 2;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        DAT_001bfd24 = 5;\n        return 1;\n      }\n      uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n      if ((*local_20[0] == '\0') && (uVar5 < 6)) {\n        DAT_001bfd24 = uVar5;\n        return 1;\n      }\n      uVar7 = *(undefined4 *)puVar1;\n      uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      FUN_00034d60(uVar6,uVar7);\n      DAT_001bfd24 = uVar5;\n      return 1;\n    }\n    if (param_1 == 0xc2) {\n      DAT_001c0b2c = 1;\n      DAT_001bfd2c = 1;\n      return 0;\n    }\n    if (0xc2 < (int)param_1) {\n      if (param_1 == 0x12e) {\n        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;\n        return 1;\n      }\n      if (param_1 != 0x141) {\n        if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      DAT_001c0b2c = 1;\n      return 1;\n    }\n    if (param_1 == 0x50) {\n      FUN_0004f470();\n      return 1;\n    }\n    bVar12 = param_1 < 0x7a;\n    bVar14 = param_1 == 0x7a;\n    if (!bVar14) {\n      return 0;\n    }\n    iVar8 = 5;\n    pbVar3 = *(byte **)PTR_optarg_001befe4;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)0x6ed7c;\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar11;\n      bVar14 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar14);\n    bVar13 = false;\n    bVar12 = (!bVar12 && !bVar14) == bVar12;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60;\n      return 1;\n    }\n    iVar8 = 7;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"undefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }\n    iVar8 = 8;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"muldefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar14 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar13 = false;\n    bVar12 = (!bVar14 && !bVar12) == bVar14;\n    if (bVar12) {\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x800;\n      return 1;\n    }\n    iVar8 = 0xe;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"max-page-size=";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0);\n      DAT_001c0f88 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)) {\n        DAT_001c0f88 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0xe);\n    }\n    else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar3;\n      pbVar11 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      } while (bVar12);\n      bVar13 = false;\n      bVar12 = (!bVar14 && !bVar12) == bVar14;\n      if (!bVar12) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }\n      DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);\n      DAT_001c0f90 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {\n        DAT_001c0f90 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid common page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0x11);\n    }\n  }\n  else {\n    if (param_1 == 0x192) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;\n      DAT_001c0e9c = DAT_001c0e9c | 4;\n      return 1;\n    }\n    if (0x192 < (int)param_1) {\n      if (param_1 == 0x196) {\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if ((int)param_1 < 0x197) {\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (param_1 == 0x198) {\n        FUN_0004f470();\n        return 1;\n      }\n      if ((int)param_1 < 0x198) {\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }\n      if (param_1 != 0x199) {\n        return 0;\n      }\n      pcVar10 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar10,"none");\n      if (iVar8 == 0) {\n        DAT_001c0e2c = 0;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar10,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      DAT_001c0e2c = 5;\n      return 1;\n    }\n    if (param_1 == 0x14d) {\n      DAT_001bfd3c = 0xffffffff;\n      return 1;\n    }\n    if (0x14d < (int)param_1) {\n      if (param_1 == 400) {\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }\n      if ((int)param_1 < 0x191) {\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x100;\n      return 1;\n    }\n    if (param_1 != 0x14b) {\n      if (param_1 == 0x14c) {\n        DAT_001bfd34 = 0;\n        return 1;\n      }\n      return 0;\n    }\n    DAT_001bfd34 = 1;\n    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      DAT_001bfd34 = 1;\n      return 1;\n    }\n    DAT_001bfd44 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n    DAT_001bfd48 = 0;\n    if (((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&\n       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)) {\n      DAT_001bfd48 = 0;\n      return 1;\n    }\n    pcVar10 = *(char **)puVar1;\n    pcVar4 = "%F%P: invalid pagesize `%s\'\n";\n  }\nLAB_0004f9a8:\n  uVar7 = dcgettext(0,pcVar4,5);\n  FUN_00034d60(uVar7,pcVar10);\n  return 1;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "undefined1 uVar2;" type_identifier identifier ;) (declaration "byte *pbVar3;" type_identifier (pointer_declarator "*pbVar3" * identifier) ;) (declaration "char *pcVar4;" primitive_type (pointer_declarator "*pcVar4" * identifier) ;) (declaration "ulong uVar5;" type_identifier identifier ;) (declaration "undefined4 uVar6;" type_identifier identifier ;) (declaration "undefined4 uVar7;" type_identifier identifier ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "byte *pbVar9;" type_identifier (pointer_declarator "*pbVar9" * identifier) ;) (declaration "char *pcVar10;" primitive_type (pointer_declarator "*pcVar10" * identifier) ;) (declaration "byte *pbVar11;" type_identifier (pointer_declarator "*pbVar11" * identifier) ;) (declaration "bool bVar12;" primitive_type identifier ;) (declaration "bool bVar13;" primitive_type identifier ;) (declaration "bool bVar14;" primitive_type identifier ;) (declaration "byte bVar15;" type_identifier identifier ;) (declaration "char *local_20 [3];" primitive_type (pointer_declarator "*local_20 [3]" * (array_declarator "local_20 [3]" identifier [ number_literal ])) ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "puVar1 = PTR_optarg_001befe4;" (assignment_expression "puVar1 = PTR_optarg_001befe4" identifier = identifier) ;) (expression_statement "bVar15 = 0;" (assignment_expression "bVar15 = 0" identifier = number_literal) ;) (expression_statement "uStack_14 = 0x4f579;" (assignment_expression "uStack_14 = 0x4f579" identifier = number_literal) ;) (if_statement "if (param_1 == 0x14a) {\n    DAT_001bfd28 = 0;\n    return 1;\n  }" if (parenthesized_expression "(param_1 == 0x14a)" ( (binary_expression "param_1 == 0x14a" identifier == number_literal) )) (compound_statement "{\n    DAT_001bfd28 = 0;\n    return 1;\n  }" { (expression_statement "DAT_001bfd28 = 0;" (assignment_expression "DAT_001bfd28 = 0" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "uVar2 = DAT_001c0e24;" (assignment_expression "uVar2 = DAT_001c0e24" identifier = identifier) ;) (if_statement "if ((int)param_1 < 0x14b) {\n    if (param_1 == 0x142) {\n      DAT_001bfd2c = 1;\n      return 1;\n    }\n    if (0x142 < (int)param_1) {\n      if (param_1 == 0x146) {\n        DAT_001bfd24 = 0;\n        return 1;\n      }\n      if (0x146 < (int)param_1) {\n        if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }\n        if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }\n        DAT_001bfd28 = 1;\n        return 1;\n      }\n      if (param_1 == 0x144) {\n        DAT_001bfd20 = 1;\n        return 1;\n      }\n      if ((int)param_1 < 0x145) {\n        DAT_001bfd20 = 2;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        DAT_001bfd24 = 5;\n        return 1;\n      }\n      uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n      if ((*local_20[0] == '\0') && (uVar5 < 6)) {\n        DAT_001bfd24 = uVar5;\n        return 1;\n      }\n      uVar7 = *(undefined4 *)puVar1;\n      uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      FUN_00034d60(uVar6,uVar7);\n      DAT_001bfd24 = uVar5;\n      return 1;\n    }\n    if (param_1 == 0xc2) {\n      DAT_001c0b2c = 1;\n      DAT_001bfd2c = 1;\n      return 0;\n    }\n    if (0xc2 < (int)param_1) {\n      if (param_1 == 0x12e) {\n        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;\n        return 1;\n      }\n      if (param_1 != 0x141) {\n        if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      DAT_001c0b2c = 1;\n      return 1;\n    }\n    if (param_1 == 0x50) {\n      FUN_0004f470();\n      return 1;\n    }\n    bVar12 = param_1 < 0x7a;\n    bVar14 = param_1 == 0x7a;\n    if (!bVar14) {\n      return 0;\n    }\n    iVar8 = 5;\n    pbVar3 = *(byte **)PTR_optarg_001befe4;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)0x6ed7c;\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar11;\n      bVar14 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar14);\n    bVar13 = false;\n    bVar12 = (!bVar12 && !bVar14) == bVar12;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60;\n      return 1;\n    }\n    iVar8 = 7;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"undefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }\n    iVar8 = 8;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"muldefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar14 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar13 = false;\n    bVar12 = (!bVar14 && !bVar12) == bVar14;\n    if (bVar12) {\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x800;\n      return 1;\n    }\n    iVar8 = 0xe;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"max-page-size=";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0);\n      DAT_001c0f88 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)) {\n        DAT_001c0f88 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0xe);\n    }\n    else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar3;\n      pbVar11 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      } while (bVar12);\n      bVar13 = false;\n      bVar12 = (!bVar14 && !bVar12) == bVar14;\n      if (!bVar12) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }\n      DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);\n      DAT_001c0f90 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {\n        DAT_001c0f90 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid common page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0x11);\n    }\n  }\n  else {\n    if (param_1 == 0x192) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;\n      DAT_001c0e9c = DAT_001c0e9c | 4;\n      return 1;\n    }\n    if (0x192 < (int)param_1) {\n      if (param_1 == 0x196) {\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if ((int)param_1 < 0x197) {\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (param_1 == 0x198) {\n        FUN_0004f470();\n        return 1;\n      }\n      if ((int)param_1 < 0x198) {\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }\n      if (param_1 != 0x199) {\n        return 0;\n      }\n      pcVar10 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar10,"none");\n      if (iVar8 == 0) {\n        DAT_001c0e2c = 0;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar10,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      DAT_001c0e2c = 5;\n      return 1;\n    }\n    if (param_1 == 0x14d) {\n      DAT_001bfd3c = 0xffffffff;\n      return 1;\n    }\n    if (0x14d < (int)param_1) {\n      if (param_1 == 400) {\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }\n      if ((int)param_1 < 0x191) {\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x100;\n      return 1;\n    }\n    if (param_1 != 0x14b) {\n      if (param_1 == 0x14c) {\n        DAT_001bfd34 = 0;\n        return 1;\n      }\n      return 0;\n    }\n    DAT_001bfd34 = 1;\n    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      DAT_001bfd34 = 1;\n      return 1;\n    }\n    DAT_001bfd44 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n    DAT_001bfd48 = 0;\n    if (((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&\n       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)) {\n      DAT_001bfd48 = 0;\n      return 1;\n    }\n    pcVar10 = *(char **)puVar1;\n    pcVar4 = "%F%P: invalid pagesize `%s\'\n";\n  }" if (parenthesized_expression "((int)param_1 < 0x14b)" ( (binary_expression "(int)param_1 < 0x14b" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n    if (param_1 == 0x142) {\n      DAT_001bfd2c = 1;\n      return 1;\n    }\n    if (0x142 < (int)param_1) {\n      if (param_1 == 0x146) {\n        DAT_001bfd24 = 0;\n        return 1;\n      }\n      if (0x146 < (int)param_1) {\n        if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }\n        if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }\n        DAT_001bfd28 = 1;\n        return 1;\n      }\n      if (param_1 == 0x144) {\n        DAT_001bfd20 = 1;\n        return 1;\n      }\n      if ((int)param_1 < 0x145) {\n        DAT_001bfd20 = 2;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        DAT_001bfd24 = 5;\n        return 1;\n      }\n      uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n      if ((*local_20[0] == '\0') && (uVar5 < 6)) {\n        DAT_001bfd24 = uVar5;\n        return 1;\n      }\n      uVar7 = *(undefined4 *)puVar1;\n      uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      FUN_00034d60(uVar6,uVar7);\n      DAT_001bfd24 = uVar5;\n      return 1;\n    }\n    if (param_1 == 0xc2) {\n      DAT_001c0b2c = 1;\n      DAT_001bfd2c = 1;\n      return 0;\n    }\n    if (0xc2 < (int)param_1) {\n      if (param_1 == 0x12e) {\n        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;\n        return 1;\n      }\n      if (param_1 != 0x141) {\n        if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      DAT_001c0b2c = 1;\n      return 1;\n    }\n    if (param_1 == 0x50) {\n      FUN_0004f470();\n      return 1;\n    }\n    bVar12 = param_1 < 0x7a;\n    bVar14 = param_1 == 0x7a;\n    if (!bVar14) {\n      return 0;\n    }\n    iVar8 = 5;\n    pbVar3 = *(byte **)PTR_optarg_001befe4;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)0x6ed7c;\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar11;\n      bVar14 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar14);\n    bVar13 = false;\n    bVar12 = (!bVar12 && !bVar14) == bVar12;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60;\n      return 1;\n    }\n    iVar8 = 7;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"undefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }\n    iVar8 = 8;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"muldefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar14 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar13 = false;\n    bVar12 = (!bVar14 && !bVar12) == bVar14;\n    if (bVar12) {\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x800;\n      return 1;\n    }\n    iVar8 = 0xe;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"max-page-size=";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0);\n      DAT_001c0f88 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)) {\n        DAT_001c0f88 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0xe);\n    }\n    else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar3;\n      pbVar11 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      } while (bVar12);\n      bVar13 = false;\n      bVar12 = (!bVar14 && !bVar12) == bVar14;\n      if (!bVar12) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }\n      DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);\n      DAT_001c0f90 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {\n        DAT_001c0f90 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid common page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0x11);\n    }\n  }" { (if_statement "if (param_1 == 0x142) {\n      DAT_001bfd2c = 1;\n      return 1;\n    }" if (parenthesized_expression "(param_1 == 0x142)" ( (binary_expression "param_1 == 0x142" identifier == number_literal) )) (compound_statement "{\n      DAT_001bfd2c = 1;\n      return 1;\n    }" { (expression_statement "DAT_001bfd2c = 1;" (assignment_expression "DAT_001bfd2c = 1" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (0x142 < (int)param_1) {\n      if (param_1 == 0x146) {\n        DAT_001bfd24 = 0;\n        return 1;\n      }\n      if (0x146 < (int)param_1) {\n        if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }\n        if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }\n        DAT_001bfd28 = 1;\n        return 1;\n      }\n      if (param_1 == 0x144) {\n        DAT_001bfd20 = 1;\n        return 1;\n      }\n      if ((int)param_1 < 0x145) {\n        DAT_001bfd20 = 2;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        DAT_001bfd24 = 5;\n        return 1;\n      }\n      uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n      if ((*local_20[0] == '\0') && (uVar5 < 6)) {\n        DAT_001bfd24 = uVar5;\n        return 1;\n      }\n      uVar7 = *(undefined4 *)puVar1;\n      uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      FUN_00034d60(uVar6,uVar7);\n      DAT_001bfd24 = uVar5;\n      return 1;\n    }" if (parenthesized_expression "(0x142 < (int)param_1)" ( (binary_expression "0x142 < (int)param_1" number_literal < (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n      if (param_1 == 0x146) {\n        DAT_001bfd24 = 0;\n        return 1;\n      }\n      if (0x146 < (int)param_1) {\n        if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }\n        if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }\n        DAT_001bfd28 = 1;\n        return 1;\n      }\n      if (param_1 == 0x144) {\n        DAT_001bfd20 = 1;\n        return 1;\n      }\n      if ((int)param_1 < 0x145) {\n        DAT_001bfd20 = 2;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        DAT_001bfd24 = 5;\n        return 1;\n      }\n      uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n      if ((*local_20[0] == '\0') && (uVar5 < 6)) {\n        DAT_001bfd24 = uVar5;\n        return 1;\n      }\n      uVar7 = *(undefined4 *)puVar1;\n      uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      FUN_00034d60(uVar6,uVar7);\n      DAT_001bfd24 = uVar5;\n      return 1;\n    }" { (if_statement "if (param_1 == 0x146) {\n        DAT_001bfd24 = 0;\n        return 1;\n      }" if (parenthesized_expression "(param_1 == 0x146)" ( (binary_expression "param_1 == 0x146" identifier == number_literal) )) (compound_statement "{\n        DAT_001bfd24 = 0;\n        return 1;\n      }" { (expression_statement "DAT_001bfd24 = 0;" (assignment_expression "DAT_001bfd24 = 0" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (0x146 < (int)param_1) {\n        if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }\n        if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }\n        DAT_001bfd28 = 1;\n        return 1;\n      }" if (parenthesized_expression "(0x146 < (int)param_1)" ( (binary_expression "0x146 < (int)param_1" number_literal < (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n        if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }\n        if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }\n        DAT_001bfd28 = 1;\n        return 1;\n      }" { (if_statement "if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }" if (parenthesized_expression "(param_1 == 0x148)" ( (binary_expression "param_1 == 0x148" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0b24 = 1;\n          return 1;\n        }" { (expression_statement "DAT_001c0b24 = 1;" (assignment_expression "DAT_001c0b24 = 1" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }" if (parenthesized_expression "((int)param_1 < 0x149)" ( (binary_expression "(int)param_1 < 0x149" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          DAT_001c0b28 = 1;\n          return 1;\n        }" { (expression_statement "DAT_001c0b28 = 1;" (assignment_expression "DAT_001c0b28 = 1" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "DAT_001bfd28 = 1;" (assignment_expression "DAT_001bfd28 = 1" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (param_1 == 0x144) {\n        DAT_001bfd20 = 1;\n        return 1;\n      }" if (parenthesized_expression "(param_1 == 0x144)" ( (binary_expression "param_1 == 0x144" identifier == number_literal) )) (compound_statement "{\n        DAT_001bfd20 = 1;\n        return 1;\n      }" { (expression_statement "DAT_001bfd20 = 1;" (assignment_expression "DAT_001bfd20 = 1" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if ((int)param_1 < 0x145) {\n        DAT_001bfd20 = 2;\n        return 1;\n      }" if (parenthesized_expression "((int)param_1 < 0x145)" ( (binary_expression "(int)param_1 < 0x145" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        DAT_001bfd20 = 2;\n        return 1;\n      }" { (expression_statement "DAT_001bfd20 = 2;" (assignment_expression "DAT_001bfd20 = 2" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        DAT_001bfd24 = 5;\n        return 1;\n      }" if (parenthesized_expression "(*(char **)PTR_optarg_001befe4 == (char *)0x0)" ( (binary_expression "*(char **)PTR_optarg_001befe4 == (char *)0x0" (pointer_expression "*(char **)PTR_optarg_001befe4" * (cast_expression "(char **)PTR_optarg_001befe4" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        DAT_001bfd24 = 5;\n        return 1;\n      }" { (expression_statement "DAT_001bfd24 = 5;" (assignment_expression "DAT_001bfd24 = 5" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);" (assignment_expression "uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0)" identifier = (call_expression "strtoul(*(char **)PTR_optarg_001befe4,local_20,0)" identifier (argument_list "(*(char **)PTR_optarg_001befe4,local_20,0)" ( (pointer_expression "*(char **)PTR_optarg_001befe4" * (cast_expression "(char **)PTR_optarg_001befe4" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) , identifier , number_literal )))) ;) (if_statement "if ((*local_20[0] == '\0') && (uVar5 < 6)) {\n        DAT_001bfd24 = uVar5;\n        return 1;\n      }" if (parenthesized_expression "((*local_20[0] == '\0') && (uVar5 < 6))" ( (binary_expression "(*local_20[0] == '\0') && (uVar5 < 6)" (parenthesized_expression "(*local_20[0] == '\0')" ( (binary_expression "*local_20[0] == '\0'" (pointer_expression "*local_20[0]" * (subscript_expression "local_20[0]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(uVar5 < 6)" ( (binary_expression "uVar5 < 6" identifier < number_literal) ))) )) (compound_statement "{\n        DAT_001bfd24 = uVar5;\n        return 1;\n      }" { (expression_statement "DAT_001bfd24 = uVar5;" (assignment_expression "DAT_001bfd24 = uVar5" identifier = identifier) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "uVar7 = *(undefined4 *)puVar1;" (assignment_expression "uVar7 = *(undefined4 *)puVar1" identifier = (pointer_expression "*(undefined4 *)puVar1" * (cast_expression "(undefined4 *)puVar1" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);" (assignment_expression "uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5)" identifier = (call_expression "dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5)" identifier (argument_list "(0,"%F%P: invalid --plt-align `%s\'\n",5)" ( number_literal , (string_literal ""%F%P: invalid --plt-align `%s\'\n"" " string_content escape_sequence escape_sequence ") , number_literal )))) ;) (expression_statement "FUN_00034d60(uVar6,uVar7);" (call_expression "FUN_00034d60(uVar6,uVar7)" identifier (argument_list "(uVar6,uVar7)" ( identifier , identifier ))) ;) (expression_statement "DAT_001bfd24 = uVar5;" (assignment_expression "DAT_001bfd24 = uVar5" identifier = identifier) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (param_1 == 0xc2) {\n      DAT_001c0b2c = 1;\n      DAT_001bfd2c = 1;\n      return 0;\n    }" if (parenthesized_expression "(param_1 == 0xc2)" ( (binary_expression "param_1 == 0xc2" identifier == number_literal) )) (compound_statement "{\n      DAT_001c0b2c = 1;\n      DAT_001bfd2c = 1;\n      return 0;\n    }" { (expression_statement "DAT_001c0b2c = 1;" (assignment_expression "DAT_001c0b2c = 1" identifier = number_literal) ;) (expression_statement "DAT_001bfd2c = 1;" (assignment_expression "DAT_001bfd2c = 1" identifier = number_literal) ;) (return_statement "return 0;" return number_literal ;) })) (if_statement "if (0xc2 < (int)param_1) {\n      if (param_1 == 0x12e) {\n        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;\n        return 1;\n      }\n      if (param_1 != 0x141) {\n        if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      DAT_001c0b2c = 1;\n      return 1;\n    }" if (parenthesized_expression "(0xc2 < (int)param_1)" ( (binary_expression "0xc2 < (int)param_1" number_literal < (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n      if (param_1 == 0x12e) {\n        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;\n        return 1;\n      }\n      if (param_1 != 0x141) {\n        if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      DAT_001c0b2c = 1;\n      return 1;\n    }" { (if_statement "if (param_1 == 0x12e) {\n        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;\n        return 1;\n      }" if (parenthesized_expression "(param_1 == 0x12e)" ( (binary_expression "param_1 == 0x12e" identifier == number_literal) )) (compound_statement "{\n        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;\n        return 1;\n      }" { (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 | 0x200;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 | 0x200" identifier = (binary_expression "_DAT_001c0e24 | 0x200" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (param_1 != 0x141) {\n        if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }" if (parenthesized_expression "(param_1 != 0x141)" ( (binary_expression "param_1 != 0x141" identifier != number_literal) )) (compound_statement "{\n        if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }" { (if_statement "if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }" if (parenthesized_expression "(param_1 == 0x12d)" ( (binary_expression "param_1 == 0x12d" identifier == number_literal) )) (compound_statement "{\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }" { (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff" identifier = (binary_expression "_DAT_001c0e24 & 0xfffffdff" identifier & number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (return_statement "return 0;" return number_literal ;) })) (expression_statement "DAT_001c0b2c = 1;" (assignment_expression "DAT_001c0b2c = 1" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (param_1 == 0x50) {\n      FUN_0004f470();\n      return 1;\n    }" if (parenthesized_expression "(param_1 == 0x50)" ( (binary_expression "param_1 == 0x50" identifier == number_literal) )) (compound_statement "{\n      FUN_0004f470();\n      return 1;\n    }" { (expression_statement "FUN_0004f470();" (call_expression "FUN_0004f470()" identifier (argument_list "()" ( ))) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "bVar12 = param_1 < 0x7a;" (assignment_expression "bVar12 = param_1 < 0x7a" identifier = (binary_expression "param_1 < 0x7a" identifier < number_literal)) ;) (expression_statement "bVar14 = param_1 == 0x7a;" (assignment_expression "bVar14 = param_1 == 0x7a" identifier = (binary_expression "param_1 == 0x7a" identifier == number_literal)) ;) (if_statement "if (!bVar14) {\n      return 0;\n    }" if (parenthesized_expression "(!bVar14)" ( (unary_expression "!bVar14" ! identifier) )) (compound_statement "{\n      return 0;\n    }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "iVar8 = 5;" (assignment_expression "iVar8 = 5" identifier = number_literal) ;) (expression_statement "pbVar3 = *(byte **)PTR_optarg_001befe4;" (assignment_expression "pbVar3 = *(byte **)PTR_optarg_001befe4" identifier = (pointer_expression "*(byte **)PTR_optarg_001befe4" * (cast_expression "(byte **)PTR_optarg_001befe4" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) (expression_statement "pbVar11 = (byte *)0x6ed7c;" (assignment_expression "pbVar11 = (byte *)0x6ed7c" identifier = (cast_expression "(byte *)0x6ed7c" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar11;\n      bVar14 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar14);" do (compound_statement "{\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar11;\n      bVar14 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar12 = *pbVar9 < *pbVar11;" (assignment_expression "bVar12 = *pbVar9 < *pbVar11" identifier = (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "bVar14 = *pbVar9 == *pbVar11;" (assignment_expression "bVar14 = *pbVar9 == *pbVar11" identifier = (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" identifier = (binary_expression "pbVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar14)" ( identifier )) ;) (expression_statement "bVar13 = false;" (assignment_expression "bVar13 = false" identifier = false) ;) (expression_statement "bVar12 = (!bVar12 && !bVar14) == bVar12;" (assignment_expression "bVar12 = (!bVar12 && !bVar14) == bVar12" identifier = (binary_expression "(!bVar12 && !bVar14) == bVar12" (parenthesized_expression "(!bVar12 && !bVar14)" ( (binary_expression "!bVar12 && !bVar14" (unary_expression "!bVar12" ! identifier) && (unary_expression "!bVar14" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60;\n      return 1;\n    }" if (parenthesized_expression "(bVar12)" ( identifier )) (compound_statement "{\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60;\n      return 1;\n    }" { (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) = (binary_expression "DAT_001c0e20._2_2_ | 0x60" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = 7;" (assignment_expression "iVar8 = 7" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) (expression_statement "pbVar11 = (byte *)"undefs";" (assignment_expression "pbVar11 = (byte *)"undefs"" identifier = (cast_expression "(byte *)"undefs"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal ""undefs"" " string_content "))) ;) (do_statement "do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);" do (compound_statement "{\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar13 = *pbVar9 < *pbVar11;" (assignment_expression "bVar13 = *pbVar9 < *pbVar11" identifier = (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "bVar12 = *pbVar9 == *pbVar11;" (assignment_expression "bVar12 = *pbVar9 == *pbVar11" identifier = (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" identifier = (binary_expression "pbVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar12)" ( identifier )) ;) (expression_statement "bVar14 = false;" (assignment_expression "bVar14 = false" identifier = false) ;) (expression_statement "bVar12 = (!bVar13 && !bVar12) == bVar13;" (assignment_expression "bVar12 = (!bVar13 && !bVar12) == bVar13" identifier = (binary_expression "(!bVar13 && !bVar12) == bVar13" (parenthesized_expression "(!bVar13 && !bVar12)" ( (binary_expression "!bVar13 && !bVar12" (unary_expression "!bVar13" ! identifier) && (unary_expression "!bVar12" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }" if (parenthesized_expression "(bVar12)" ( identifier )) (compound_statement "{\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }" { (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) = (binary_expression "DAT_001c0e20._2_2_ & 0xff9f | 0x20" (binary_expression "DAT_001c0e20._2_2_ & 0xff9f" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = 8;" (assignment_expression "iVar8 = 8" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) (expression_statement "pbVar11 = (byte *)"muldefs";" (assignment_expression "pbVar11 = (byte *)"muldefs"" identifier = (cast_expression "(byte *)"muldefs"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal ""muldefs"" " string_content "))) ;) (do_statement "do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar14 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);" do (compound_statement "{\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar14 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar14 = *pbVar9 < *pbVar11;" (assignment_expression "bVar14 = *pbVar9 < *pbVar11" identifier = (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "bVar12 = *pbVar9 == *pbVar11;" (assignment_expression "bVar12 = *pbVar9 == *pbVar11" identifier = (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" identifier = (binary_expression "pbVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar12)" ( identifier )) ;) (expression_statement "bVar13 = false;" (assignment_expression "bVar13 = false" identifier = false) ;) (expression_statement "bVar12 = (!bVar14 && !bVar12) == bVar14;" (assignment_expression "bVar12 = (!bVar14 && !bVar12) == bVar14" identifier = (binary_expression "(!bVar14 && !bVar12) == bVar14" (parenthesized_expression "(!bVar14 && !bVar12)" ( (binary_expression "!bVar14 && !bVar12" (unary_expression "!bVar14" ! identifier) && (unary_expression "!bVar12" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar12) {\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x800;\n      return 1;\n    }" if (parenthesized_expression "(bVar12)" ( identifier )) (compound_statement "{\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x800;\n      return 1;\n    }" { (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 | 0x800;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 | 0x800" identifier = (binary_expression "_DAT_001c0e24 | 0x800" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = 0xe;" (assignment_expression "iVar8 = 0xe" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) (expression_statement "pbVar11 = (byte *)"max-page-size=";" (assignment_expression "pbVar11 = (byte *)"max-page-size="" identifier = (cast_expression "(byte *)"max-page-size="" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal ""max-page-size="" " string_content "))) ;) (do_statement "do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);" do (compound_statement "{\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar13 = *pbVar9 < *pbVar11;" (assignment_expression "bVar13 = *pbVar9 < *pbVar11" identifier = (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "bVar12 = *pbVar9 == *pbVar11;" (assignment_expression "bVar12 = *pbVar9 == *pbVar11" identifier = (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" identifier = (binary_expression "pbVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar12)" ( identifier )) ;) (expression_statement "bVar14 = false;" (assignment_expression "bVar14 = false" identifier = false) ;) (expression_statement "bVar12 = (!bVar13 && !bVar12) == bVar13;" (assignment_expression "bVar12 = (!bVar13 && !bVar12) == bVar13" identifier = (binary_expression "(!bVar13 && !bVar12) == bVar13" (parenthesized_expression "(!bVar13 && !bVar12)" ( (binary_expression "!bVar13 && !bVar12" (unary_expression "!bVar13" ! identifier) && (unary_expression "!bVar12" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar12) {\n      DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0);\n      DAT_001c0f88 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)) {\n        DAT_001c0f88 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0xe);\n    }\n    else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar3;\n      pbVar11 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      } while (bVar12);\n      bVar13 = false;\n      bVar12 = (!bVar14 && !bVar12) == bVar14;\n      if (!bVar12) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }\n      DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);\n      DAT_001c0f90 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {\n        DAT_001c0f90 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid common page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0x11);\n    }" if (parenthesized_expression "(bVar12)" ( identifier )) (compound_statement "{\n      DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0);\n      DAT_001c0f88 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)) {\n        DAT_001c0f88 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0xe);\n    }" { (expression_statement "DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0);" (assignment_expression "DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0)" identifier = (call_expression "strtoul((char *)(pbVar3 + 0xe),local_20,0)" identifier (argument_list "((char *)(pbVar3 + 0xe),local_20,0)" ( (cast_expression "(char *)(pbVar3 + 0xe)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar3 + 0xe)" ( (binary_expression "pbVar3 + 0xe" identifier + number_literal) ))) , identifier , number_literal )))) ;) (expression_statement "DAT_001c0f88 = 0;" (assignment_expression "DAT_001c0f88 = 0" identifier = number_literal) ;) (if_statement "if ((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)) {\n        DAT_001c0f88 = 0;\n        return 1;\n      }" if (parenthesized_expression "((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0))" ( (binary_expression "(*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)" (parenthesized_expression "(*local_20[0] == '\0')" ( (binary_expression "*local_20[0] == '\0'" (pointer_expression "*local_20[0]" * (subscript_expression "local_20[0]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)" ( (binary_expression "(DAT_001c0f84 & DAT_001c0f84 - 1) == 0" (parenthesized_expression "(DAT_001c0f84 & DAT_001c0f84 - 1)" ( (binary_expression "DAT_001c0f84 & DAT_001c0f84 - 1" identifier & (binary_expression "DAT_001c0f84 - 1" identifier - number_literal)) )) == number_literal) ))) )) (compound_statement "{\n        DAT_001c0f88 = 0;\n        return 1;\n      }" { (expression_statement "DAT_001c0f88 = 0;" (assignment_expression "DAT_001c0f88 = 0" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "pcVar4 = "%F%P: invalid maximum page size `%s\'\n";" (assignment_expression "pcVar4 = "%F%P: invalid maximum page size `%s\'\n"" identifier = (string_literal ""%F%P: invalid maximum page size `%s\'\n"" " string_content escape_sequence escape_sequence ")) ;) (expression_statement "pcVar10 = (char *)(*(int *)puVar1 + 0xe);" (assignment_expression "pcVar10 = (char *)(*(int *)puVar1 + 0xe)" identifier = (cast_expression "(char *)(*(int *)puVar1 + 0xe)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)puVar1 + 0xe)" ( (binary_expression "*(int *)puVar1 + 0xe" (pointer_expression "*(int *)puVar1" * (cast_expression "(int *)puVar1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) ;) }) (else_clause "else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar3;\n      pbVar11 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      } while (bVar12);\n      bVar13 = false;\n      bVar12 = (!bVar14 && !bVar12) == bVar14;\n      if (!bVar12) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }\n      DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);\n      DAT_001c0f90 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {\n        DAT_001c0f90 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid common page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0x11);\n    }" else (compound_statement "{\n      iVar8 = 0x11;\n      pbVar9 = pbVar3;\n      pbVar11 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      } while (bVar12);\n      bVar13 = false;\n      bVar12 = (!bVar14 && !bVar12) == bVar14;\n      if (!bVar12) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }\n      DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);\n      DAT_001c0f90 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {\n        DAT_001c0f90 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid common page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0x11);\n    }" { (expression_statement "iVar8 = 0x11;" (assignment_expression "iVar8 = 0x11" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) (expression_statement "pbVar11 = (byte *)"common-page-size=";" (assignment_expression "pbVar11 = (byte *)"common-page-size="" identifier = (cast_expression "(byte *)"common-page-size="" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal ""common-page-size="" " string_content "))) ;) (do_statement "do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      } while (bVar12);" do (compound_statement "{\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar14 = *pbVar9 < *pbVar11;" (assignment_expression "bVar14 = *pbVar9 < *pbVar11" identifier = (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "bVar12 = *pbVar9 == *pbVar11;" (assignment_expression "bVar12 = *pbVar9 == *pbVar11" identifier = (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" identifier = (binary_expression "pbVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar12)" ( identifier )) ;) (expression_statement "bVar13 = false;" (assignment_expression "bVar13 = false" identifier = false) ;) (expression_statement "bVar12 = (!bVar14 && !bVar12) == bVar14;" (assignment_expression "bVar12 = (!bVar14 && !bVar12) == bVar14" identifier = (binary_expression "(!bVar14 && !bVar12) == bVar14" (parenthesized_expression "(!bVar14 && !bVar12)" ( (binary_expression "!bVar14 && !bVar12" (unary_expression "!bVar14" ! identifier) && (unary_expression "!bVar12" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar12) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }" if (parenthesized_expression "(!bVar12)" ( (unary_expression "!bVar12" ! identifier) )) (compound_statement "{\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }" { (expression_statement "iVar8 = 0xb;" (assignment_expression "iVar8 = 0xb" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) (expression_statement "pbVar11 = (byte *)"stack-size=";" (assignment_expression "pbVar11 = (byte *)"stack-size="" identifier = (cast_expression "(byte *)"stack-size="" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal ""stack-size="" " string_content "))) ;) (do_statement "do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);" do (compound_statement "{\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar13 = *pbVar9 < *pbVar11;" (assignment_expression "bVar13 = *pbVar9 < *pbVar11" identifier = (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "bVar12 = *pbVar9 == *pbVar11;" (assignment_expression "bVar12 = *pbVar9 == *pbVar11" identifier = (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" identifier = (binary_expression "pbVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar12)" ( identifier )) ;) (expression_statement "bVar14 = false;" (assignment_expression "bVar14 = false" identifier = false) ;) (expression_statement "bVar12 = (!bVar13 && !bVar12) == bVar13;" (assignment_expression "bVar12 = (!bVar13 && !bVar12) == bVar13" identifier = (binary_expression "(!bVar13 && !bVar12) == bVar13" (parenthesized_expression "(!bVar13 && !bVar12)" ( (binary_expression "!bVar13 && !bVar12" (unary_expression "!bVar13" ! identifier) && (unary_expression "!bVar12" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }" if (parenthesized_expression "(bVar12)" ( identifier )) (compound_statement "{\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }" { (expression_statement "DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);" (assignment_expression "DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0)" identifier = (call_expression "strtoul((char *)(pbVar3 + 0xb),local_20,0)" identifier (argument_list "((char *)(pbVar3 + 0xb),local_20,0)" ( (cast_expression "(char *)(pbVar3 + 0xb)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar3 + 0xb)" ( (binary_expression "pbVar3 + 0xb" identifier + number_literal) ))) , identifier , number_literal )))) ;) (expression_statement "DAT_001c0e34 = 0;" (assignment_expression "DAT_001c0e34 = 0" identifier = number_literal) ;) (if_statement "if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }" if (parenthesized_expression "(*local_20[0] != '\0')" ( (binary_expression "*local_20[0] != '\0'" (pointer_expression "*local_20[0]" * (subscript_expression "local_20[0]" identifier [ number_literal ])) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }" { (expression_statement "iVar8 = *(int *)puVar1;" (assignment_expression "iVar8 = *(int *)puVar1" identifier = (pointer_expression "*(int *)puVar1" * (cast_expression "(int *)puVar1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);" (assignment_expression "uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb)" identifier = (call_expression "dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb)" identifier (argument_list "(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb)" ( number_literal , (string_literal ""%F%P: invalid stack size `%s\'\n"" " string_content escape_sequence escape_sequence ") , number_literal , (binary_expression "pbVar3 + 0xb" identifier + number_literal) )))) ;) (expression_statement "FUN_00034d60(uVar7,iVar8 + 0xb);" (call_expression "FUN_00034d60(uVar7,iVar8 + 0xb)" identifier (argument_list "(uVar7,iVar8 + 0xb)" ( identifier , (binary_expression "iVar8 + 0xb" identifier + number_literal) ))) ;) })) (if_statement "if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }" if (parenthesized_expression "(DAT_001c0e34 != 0 || DAT_001c0e30 != 0)" ( (binary_expression "DAT_001c0e34 != 0 || DAT_001c0e30 != 0" (binary_expression "DAT_001c0e34 != 0" identifier != number_literal) || (binary_expression "DAT_001c0e30 != 0" identifier != number_literal)) )) (compound_statement "{\n            return 1;\n          }" { (return_statement "return 1;" return number_literal ;) })) (expression_statement "DAT_001c0e30 = 0xffffffff;" (assignment_expression "DAT_001c0e30 = 0xffffffff" identifier = number_literal) ;) (expression_statement "DAT_001c0e34 = 0xffffffff;" (assignment_expression "DAT_001c0e34 = 0xffffffff" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = 10;" (assignment_expression "iVar8 = 10" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) (expression_statement "pbVar11 = (byte *)0xa55ed;" (assignment_expression "pbVar11 = (byte *)0xa55ed" identifier = (cast_expression "(byte *)0xa55ed" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);" do (compound_statement "{\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar14 = *pbVar9 < *pbVar11;" (assignment_expression "bVar14 = *pbVar9 < *pbVar11" identifier = (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "bVar12 = *pbVar9 == *pbVar11;" (assignment_expression "bVar12 = *pbVar9 == *pbVar11" identifier = (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" identifier = (binary_expression "pbVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar12)" ( identifier )) ;) (if_statement "if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }" if (parenthesized_expression "((!bVar14 && !bVar12) == bVar14)" ( (binary_expression "(!bVar14 && !bVar12) == bVar14" (parenthesized_expression "(!bVar14 && !bVar12)" ( (binary_expression "!bVar14 && !bVar12" (unary_expression "!bVar14" ! identifier) && (unary_expression "!bVar12" ! identifier)) )) == identifier) )) (compound_statement "{\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }" { (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000" identifier = (binary_expression "_DAT_001c0e24 & 0xfffe7fff | 0x8000" (binary_expression "_DAT_001c0e24 & 0xfffe7fff" identifier & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"noexecstack");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"noexecstack")" identifier = (call_expression "strcmp((char *)pbVar3,"noexecstack")" identifier (argument_list "((char *)pbVar3,"noexecstack")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""noexecstack"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }" { (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000" identifier = (binary_expression "_DAT_001c0e24 & 0xfffe7fff | 0x10000" (binary_expression "_DAT_001c0e24 & 0xfffe7fff" identifier & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"globalaudit");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"globalaudit")" identifier = (call_expression "strcmp((char *)pbVar3,"globalaudit")" identifier (argument_list "((char *)pbVar3,"globalaudit")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""globalaudit"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }" { (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 0x1000000;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 0x1000000" identifier = (binary_expression "DAT_001c0e9c | 0x1000000" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"global");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"global")" identifier = (call_expression "strcmp((char *)pbVar3,"global")" identifier (argument_list "((char *)pbVar3,"global")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""global"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }" { (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 2;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 2" identifier = (binary_expression "DAT_001c0e9c | 2" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"initfirst");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"initfirst")" identifier = (call_expression "strcmp((char *)pbVar3,"initfirst")" identifier (argument_list "((char *)pbVar3,"initfirst")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""initfirst"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }" { (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 0x20;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 0x20" identifier = (binary_expression "DAT_001c0e9c | 0x20" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"interpose");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"interpose")" identifier = (call_expression "strcmp((char *)pbVar3,"interpose")" identifier (argument_list "((char *)pbVar3,"interpose")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""interpose"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }" { (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 0x400;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 0x400" identifier = (binary_expression "DAT_001c0e9c | 0x400" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"loadfltr");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"loadfltr")" identifier = (call_expression "strcmp((char *)pbVar3,"loadfltr")" identifier (argument_list "((char *)pbVar3,"loadfltr")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""loadfltr"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }" { (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 0x10;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 0x10" identifier = (binary_expression "DAT_001c0e9c | 0x10" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"nodefaultlib");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"nodefaultlib")" identifier = (call_expression "strcmp((char *)pbVar3,"nodefaultlib")" identifier (argument_list "((char *)pbVar3,"nodefaultlib")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""nodefaultlib"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }" { (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 0x800;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 0x800" identifier = (binary_expression "DAT_001c0e9c | 0x800" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"nodelete");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"nodelete")" identifier = (call_expression "strcmp((char *)pbVar3,"nodelete")" identifier (argument_list "((char *)pbVar3,"nodelete")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""nodelete"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }" { (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 8;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 8" identifier = (binary_expression "DAT_001c0e9c | 8" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"nodlopen");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"nodlopen")" identifier = (call_expression "strcmp((char *)pbVar3,"nodlopen")" identifier (argument_list "((char *)pbVar3,"nodlopen")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""nodlopen"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }" { (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 0x40;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 0x40" identifier = (binary_expression "DAT_001c0e9c | 0x40" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"nodump");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"nodump")" identifier = (call_expression "strcmp((char *)pbVar3,"nodump")" identifier (argument_list "((char *)pbVar3,"nodump")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""nodump"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }" { (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 0x1000;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 0x1000" identifier = (binary_expression "DAT_001c0e9c | 0x1000" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"now");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"now")" identifier = (call_expression "strcmp((char *)pbVar3,"now")" identifier (argument_list "((char *)pbVar3,"now")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""now"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }" { (expression_statement "_DAT_001c0e94 = _DAT_001c0e94 | 8;" (assignment_expression "_DAT_001c0e94 = _DAT_001c0e94 | 8" identifier = (binary_expression "_DAT_001c0e94 | 8" identifier | number_literal)) ;) (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 1;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 1" identifier = (binary_expression "DAT_001c0e9c | 1" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"lazy");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"lazy")" identifier = (call_expression "strcmp((char *)pbVar3,"lazy")" identifier (argument_list "((char *)pbVar3,"lazy")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""lazy"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }" { (expression_statement "_DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;" (assignment_expression "_DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7" identifier = (binary_expression "_DAT_001c0e94 & 0xfffffff7" identifier & number_literal)) ;) (expression_statement "DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe" identifier = (binary_expression "DAT_001c0e9c & 0xfffffffe" identifier & number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"origin");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"origin")" identifier = (call_expression "strcmp((char *)pbVar3,"origin")" identifier (argument_list "((char *)pbVar3,"origin")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""origin"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }" { (expression_statement "_DAT_001c0e94 = _DAT_001c0e94 | 1;" (assignment_expression "_DAT_001c0e94 = _DAT_001c0e94 | 1" identifier = (binary_expression "_DAT_001c0e94 | 1" identifier | number_literal)) ;) (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 0x80;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 0x80" identifier = (binary_expression "DAT_001c0e9c | 0x80" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"combreloc");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"combreloc")" identifier = (call_expression "strcmp((char *)pbVar3,"combreloc")" identifier (argument_list "((char *)pbVar3,"combreloc")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""combreloc"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }" { (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 | 0x40;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 | 0x40" identifier = (binary_expression "_DAT_001c0e24 | 0x40" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"nocombreloc");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"nocombreloc")" identifier = (call_expression "strcmp((char *)pbVar3,"nocombreloc")" identifier (argument_list "((char *)pbVar3,"nocombreloc")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""nocombreloc"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }" { (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf" identifier = (binary_expression "_DAT_001c0e24 & 0xffffffbf" identifier & number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"nocopyreloc");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"nocopyreloc")" identifier = (call_expression "strcmp((char *)pbVar3,"nocopyreloc")" identifier (argument_list "((char *)pbVar3,"nocopyreloc")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""nocopyreloc"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }" { (expression_statement "DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;" (assignment_expression "DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8" (field_expression "DAT_001c0e20._0_1_" identifier . field_identifier) = (binary_expression "(byte)DAT_001c0e20 | 8" (cast_expression "(byte)DAT_001c0e20" ( (type_descriptor "byte" type_identifier) ) identifier) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"relro");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"relro")" identifier = (call_expression "strcmp((char *)pbVar3,"relro")" identifier (argument_list "((char *)pbVar3,"relro")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""relro"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }" { (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) = (binary_expression "DAT_001c0e20._2_2_ | 0x1000" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"norelro");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"norelro")" identifier = (call_expression "strcmp((char *)pbVar3,"norelro")" identifier (argument_list "((char *)pbVar3,"norelro")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""norelro"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }" { (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) = (binary_expression "DAT_001c0e20._2_2_ & 0xefff" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) & number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"separate-code");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"separate-code")" identifier = (call_expression "strcmp((char *)pbVar3,"separate-code")" identifier (argument_list "((char *)pbVar3,"separate-code")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""separate-code"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }" { (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) = (binary_expression "DAT_001c0e20._2_2_ | 0x2000" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"noseparate-code");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"noseparate-code")" identifier = (call_expression "strcmp((char *)pbVar3,"noseparate-code")" identifier (argument_list "((char *)pbVar3,"noseparate-code")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""noseparate-code"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }" { (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) = (binary_expression "DAT_001c0e20._2_2_ & 0xdfff" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) & number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"common");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"common")" identifier = (call_expression "strcmp((char *)pbVar3,"common")" identifier (argument_list "((char *)pbVar3,"common")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""common"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }" { (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) = (binary_expression "DAT_001c0e20._2_2_ & 0xfff9 | 2" (binary_expression "DAT_001c0e20._2_2_ & 0xfff9" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"nocommon");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"nocommon")" identifier = (call_expression "strcmp((char *)pbVar3,"nocommon")" identifier (argument_list "((char *)pbVar3,"nocommon")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""nocommon"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }" { (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) = (binary_expression "DAT_001c0e20._2_2_ & 0xfff9 | 4" (binary_expression "DAT_001c0e20._2_2_ & 0xfff9" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"text");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"text")" identifier = (call_expression "strcmp((char *)pbVar3,"text")" identifier (argument_list "((char *)pbVar3,"text")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""text"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }" { (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 | 2;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 | 2" identifier = (binary_expression "_DAT_001c0e24 | 2" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"notext");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"notext")" identifier = (call_expression "strcmp((char *)pbVar3,"notext")" identifier (argument_list "((char *)pbVar3,"notext")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""notext"" " string_content ") )))) ;) (if_statement "if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }" if (parenthesized_expression "((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0))" ( (binary_expression "(iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)" (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) || (parenthesized_expression "(iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)" ( (comma_expression "iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"textoff")" identifier = (call_expression "strcmp((char *)pbVar3,"textoff")" identifier (argument_list "((char *)pbVar3,"textoff")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""textoff"" " string_content ") )))) , (binary_expression "iVar8 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }" { (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd" identifier = (binary_expression "_DAT_001c0e24 & 0xfffffffd" identifier & number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak")" identifier = (call_expression "strcmp((char *)pbVar3,"dynamic-undefined-weak")" identifier (argument_list "((char *)pbVar3,"dynamic-undefined-weak")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""dynamic-undefined-weak"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e84 = 1;\n          return 1;\n        }" { (expression_statement "DAT_001c0e84 = 1;" (assignment_expression "DAT_001c0e84 = 1" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak")" identifier = (call_expression "strcmp((char *)pbVar3,"nodynamic-undefined-weak")" identifier (argument_list "((char *)pbVar3,"nodynamic-undefined-weak")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""nodynamic-undefined-weak"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e84 = 0;\n          return 1;\n        }" { (expression_statement "DAT_001c0e84 = 0;" (assignment_expression "DAT_001c0e84 = 0" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "pcVar10 = "%P: warning: -z %s ignored\n";" (assignment_expression "pcVar10 = "%P: warning: -z %s ignored\n"" identifier = (string_literal ""%P: warning: -z %s ignored\n"" " string_content escape_sequence ")) ;) (labeled_statement "LAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);" statement_identifier : (expression_statement "uVar7 = dcgettext(0,pcVar10,5);" (assignment_expression "uVar7 = dcgettext(0,pcVar10,5)" identifier = (call_expression "dcgettext(0,pcVar10,5)" identifier (argument_list "(0,pcVar10,5)" ( number_literal , identifier , number_literal )))) ;)) (expression_statement "FUN_00034d60(uVar7,pbVar3);" (call_expression "FUN_00034d60(uVar7,pbVar3)" identifier (argument_list "(uVar7,pbVar3)" ( identifier , identifier ))) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);" (assignment_expression "DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0)" identifier = (call_expression "strtoul((char *)(pbVar3 + 0x11),local_20,0)" identifier (argument_list "((char *)(pbVar3 + 0x11),local_20,0)" ( (cast_expression "(char *)(pbVar3 + 0x11)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar3 + 0x11)" ( (binary_expression "pbVar3 + 0x11" identifier + number_literal) ))) , identifier , number_literal )))) ;) (expression_statement "DAT_001c0f90 = 0;" (assignment_expression "DAT_001c0f90 = 0" identifier = number_literal) ;) (if_statement "if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {\n        DAT_001c0f90 = 0;\n        return 1;\n      }" if (parenthesized_expression "((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0))" ( (binary_expression "(*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)" (parenthesized_expression "(*local_20[0] == '\0')" ( (binary_expression "*local_20[0] == '\0'" (pointer_expression "*local_20[0]" * (subscript_expression "local_20[0]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)" ( (binary_expression "(DAT_001c0f8c & DAT_001c0f8c - 1) == 0" (parenthesized_expression "(DAT_001c0f8c & DAT_001c0f8c - 1)" ( (binary_expression "DAT_001c0f8c & DAT_001c0f8c - 1" identifier & (binary_expression "DAT_001c0f8c - 1" identifier - number_literal)) )) == number_literal) ))) )) (compound_statement "{\n        DAT_001c0f90 = 0;\n        return 1;\n      }" { (expression_statement "DAT_001c0f90 = 0;" (assignment_expression "DAT_001c0f90 = 0" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "pcVar4 = "%F%P: invalid common page size `%s\'\n";" (assignment_expression "pcVar4 = "%F%P: invalid common page size `%s\'\n"" identifier = (string_literal ""%F%P: invalid common page size `%s\'\n"" " string_content escape_sequence escape_sequence ")) ;) (expression_statement "pcVar10 = (char *)(*(int *)puVar1 + 0x11);" (assignment_expression "pcVar10 = (char *)(*(int *)puVar1 + 0x11)" identifier = (cast_expression "(char *)(*(int *)puVar1 + 0x11)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)puVar1 + 0x11)" ( (binary_expression "*(int *)puVar1 + 0x11" (pointer_expression "*(int *)puVar1" * (cast_expression "(int *)puVar1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) ;) }))) }) (else_clause "else {\n    if (param_1 == 0x192) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;\n      DAT_001c0e9c = DAT_001c0e9c | 4;\n      return 1;\n    }\n    if (0x192 < (int)param_1) {\n      if (param_1 == 0x196) {\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if ((int)param_1 < 0x197) {\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (param_1 == 0x198) {\n        FUN_0004f470();\n        return 1;\n      }\n      if ((int)param_1 < 0x198) {\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }\n      if (param_1 != 0x199) {\n        return 0;\n      }\n      pcVar10 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar10,"none");\n      if (iVar8 == 0) {\n        DAT_001c0e2c = 0;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar10,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      DAT_001c0e2c = 5;\n      return 1;\n    }\n    if (param_1 == 0x14d) {\n      DAT_001bfd3c = 0xffffffff;\n      return 1;\n    }\n    if (0x14d < (int)param_1) {\n      if (param_1 == 400) {\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }\n      if ((int)param_1 < 0x191) {\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x100;\n      return 1;\n    }\n    if (param_1 != 0x14b) {\n      if (param_1 == 0x14c) {\n        DAT_001bfd34 = 0;\n        return 1;\n      }\n      return 0;\n    }\n    DAT_001bfd34 = 1;\n    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      DAT_001bfd34 = 1;\n      return 1;\n    }\n    DAT_001bfd44 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n    DAT_001bfd48 = 0;\n    if (((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&\n       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)) {\n      DAT_001bfd48 = 0;\n      return 1;\n    }\n    pcVar10 = *(char **)puVar1;\n    pcVar4 = "%F%P: invalid pagesize `%s\'\n";\n  }" else (compound_statement "{\n    if (param_1 == 0x192) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;\n      DAT_001c0e9c = DAT_001c0e9c | 4;\n      return 1;\n    }\n    if (0x192 < (int)param_1) {\n      if (param_1 == 0x196) {\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if ((int)param_1 < 0x197) {\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (param_1 == 0x198) {\n        FUN_0004f470();\n        return 1;\n      }\n      if ((int)param_1 < 0x198) {\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }\n      if (param_1 != 0x199) {\n        return 0;\n      }\n      pcVar10 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar10,"none");\n      if (iVar8 == 0) {\n        DAT_001c0e2c = 0;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar10,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      DAT_001c0e2c = 5;\n      return 1;\n    }\n    if (param_1 == 0x14d) {\n      DAT_001bfd3c = 0xffffffff;\n      return 1;\n    }\n    if (0x14d < (int)param_1) {\n      if (param_1 == 400) {\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }\n      if ((int)param_1 < 0x191) {\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x100;\n      return 1;\n    }\n    if (param_1 != 0x14b) {\n      if (param_1 == 0x14c) {\n        DAT_001bfd34 = 0;\n        return 1;\n      }\n      return 0;\n    }\n    DAT_001bfd34 = 1;\n    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      DAT_001bfd34 = 1;\n      return 1;\n    }\n    DAT_001bfd44 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n    DAT_001bfd48 = 0;\n    if (((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&\n       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)) {\n      DAT_001bfd48 = 0;\n      return 1;\n    }\n    pcVar10 = *(char **)puVar1;\n    pcVar4 = "%F%P: invalid pagesize `%s\'\n";\n  }" { (if_statement "if (param_1 == 0x192) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;\n      DAT_001c0e9c = DAT_001c0e9c | 4;\n      return 1;\n    }" if (parenthesized_expression "(param_1 == 0x192)" ( (binary_expression "param_1 == 0x192" identifier == number_literal) )) (compound_statement "{\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;\n      DAT_001c0e9c = DAT_001c0e9c | 4;\n      return 1;\n    }" { (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) = (binary_expression "DAT_001c0e20._2_2_ | 0x1e0" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) | number_literal)) ;) (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 4;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 4" identifier = (binary_expression "DAT_001c0e9c | 4" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (0x192 < (int)param_1) {\n      if (param_1 == 0x196) {\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if ((int)param_1 < 0x197) {\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (param_1 == 0x198) {\n        FUN_0004f470();\n        return 1;\n      }\n      if ((int)param_1 < 0x198) {\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }\n      if (param_1 != 0x199) {\n        return 0;\n      }\n      pcVar10 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar10,"none");\n      if (iVar8 == 0) {\n        DAT_001c0e2c = 0;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar10,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      DAT_001c0e2c = 5;\n      return 1;\n    }" if (parenthesized_expression "(0x192 < (int)param_1)" ( (binary_expression "0x192 < (int)param_1" number_literal < (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n      if (param_1 == 0x196) {\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if ((int)param_1 < 0x197) {\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (param_1 == 0x198) {\n        FUN_0004f470();\n        return 1;\n      }\n      if ((int)param_1 < 0x198) {\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }\n      if (param_1 != 0x199) {\n        return 0;\n      }\n      pcVar10 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar10,"none");\n      if (iVar8 == 0) {\n        DAT_001c0e2c = 0;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar10,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      DAT_001c0e2c = 5;\n      return 1;\n    }" { (if_statement "if (param_1 == 0x196) {\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }" if (parenthesized_expression "(param_1 == 0x196)" ( (binary_expression "param_1 == 0x196" identifier == number_literal) )) (compound_statement "{\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }" { (expression_statement "pbVar3 = *(byte **)PTR_optarg_001befe4;" (assignment_expression "pbVar3 = *(byte **)PTR_optarg_001befe4" identifier = (pointer_expression "*(byte **)PTR_optarg_001befe4" * (cast_expression "(byte **)PTR_optarg_001befe4" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "iVar8 = 5;" (assignment_expression "iVar8 = 5" identifier = number_literal) ;) (expression_statement "bVar12 = false;" (assignment_expression "bVar12 = false" identifier = false) ;) (expression_statement "bVar14 = (_DAT_001c0e24 & 0xf3) == 0;" (assignment_expression "bVar14 = (_DAT_001c0e24 & 0xf3) == 0" identifier = (binary_expression "(_DAT_001c0e24 & 0xf3) == 0" (parenthesized_expression "(_DAT_001c0e24 & 0xf3)" ( (binary_expression "_DAT_001c0e24 & 0xf3" identifier & number_literal) )) == number_literal)) ;) (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3" identifier = (binary_expression "_DAT_001c0e24 & 0xfffffff3" identifier & number_literal)) ;) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) (expression_statement "pbVar11 = &DAT_000a55a5;" (assignment_expression "pbVar11 = &DAT_000a55a5" identifier = (pointer_expression "&DAT_000a55a5" & identifier)) ;) (do_statement "do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);" do (compound_statement "{\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar12 = *pbVar9 < *pbVar11;" (assignment_expression "bVar12 = *pbVar9 < *pbVar11" identifier = (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "bVar14 = *pbVar9 == *pbVar11;" (assignment_expression "bVar14 = *pbVar9 == *pbVar11" identifier = (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" identifier = (binary_expression "pbVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar14)" ( identifier )) ;) (expression_statement "bVar13 = false;" (assignment_expression "bVar13 = false" identifier = false) ;) (expression_statement "bVar12 = (!bVar12 && !bVar14) == bVar12;" (assignment_expression "bVar12 = (!bVar12 && !bVar14) == bVar12" identifier = (binary_expression "(!bVar12 && !bVar14) == bVar12" (parenthesized_expression "(!bVar12 && !bVar14)" ( (binary_expression "!bVar12 && !bVar14" (unary_expression "!bVar12" ! identifier) && (unary_expression "!bVar14" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }" if (parenthesized_expression "(bVar12)" ( identifier )) (compound_statement "{\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }" { (expression_statement "_DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;" (assignment_expression "_DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4" identifier = (binary_expression "CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4" (binary_expression "CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3" (call_expression "CONCAT31(_DAT_001c0e25,uVar2)" identifier (argument_list "(_DAT_001c0e25,uVar2)" ( identifier , identifier ))) & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) (expression_statement "pbVar11 = &DAT_000a5597;" (assignment_expression "pbVar11 = &DAT_000a5597" identifier = (pointer_expression "&DAT_000a5597" & identifier)) ;) (do_statement "do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);" do (compound_statement "{\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar13 = *pbVar9 < *pbVar11;" (assignment_expression "bVar13 = *pbVar9 < *pbVar11" identifier = (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "bVar12 = *pbVar9 == *pbVar11;" (assignment_expression "bVar12 = *pbVar9 == *pbVar11" identifier = (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" identifier = (binary_expression "pbVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar12)" ( identifier )) ;) (expression_statement "bVar14 = false;" (assignment_expression "bVar14 = false" identifier = false) ;) (expression_statement "bVar12 = (!bVar13 && !bVar12) == bVar13;" (assignment_expression "bVar12 = (!bVar13 && !bVar12) == bVar13" identifier = (binary_expression "(!bVar13 && !bVar12) == bVar13" (parenthesized_expression "(!bVar13 && !bVar12)" ( (binary_expression "!bVar13 && !bVar12" (unary_expression "!bVar13" ! identifier) && (unary_expression "!bVar12" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }" if (parenthesized_expression "(bVar12)" ( identifier )) (compound_statement "{\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }" { (expression_statement "_DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;" (assignment_expression "_DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8" identifier = (binary_expression "CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8" (binary_expression "CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3" (call_expression "CONCAT31(_DAT_001c0e25,uVar2)" identifier (argument_list "(_DAT_001c0e25,uVar2)" ( identifier , identifier ))) & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = 5;" (assignment_expression "iVar8 = 5" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) (expression_statement "pbVar11 = &DAT_000a55aa;" (assignment_expression "pbVar11 = &DAT_000a55aa" identifier = (pointer_expression "&DAT_000a55aa" & identifier)) ;) (do_statement "do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);" do (compound_statement "{\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar14 = *pbVar9 < *pbVar11;" (assignment_expression "bVar14 = *pbVar9 < *pbVar11" identifier = (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "bVar12 = *pbVar9 == *pbVar11;" (assignment_expression "bVar12 = *pbVar9 == *pbVar11" identifier = (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" identifier = (binary_expression "pbVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar12)" ( identifier )) ;) (if_statement "if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }" if (parenthesized_expression "((!bVar14 && !bVar12) == bVar14)" ( (binary_expression "(!bVar14 && !bVar12) == bVar14" (parenthesized_expression "(!bVar14 && !bVar12)" ( (binary_expression "!bVar14 && !bVar12" (unary_expression "!bVar14" ! identifier) && (unary_expression "!bVar12" ! identifier)) )) == identifier) )) (compound_statement "{\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }" { (expression_statement "_DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;" (assignment_expression "_DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc" identifier = (binary_expression "CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc" (binary_expression "CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3" (call_expression "CONCAT31(_DAT_001c0e25,uVar2)" identifier (argument_list "(_DAT_001c0e25,uVar2)" ( identifier , identifier ))) & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "pcVar10 = "%F%P: invalid hash style `%s\'\n";" (assignment_expression "pcVar10 = "%F%P: invalid hash style `%s\'\n"" identifier = (string_literal ""%F%P: invalid hash style `%s\'\n"" " string_content escape_sequence escape_sequence ")) ;) (goto_statement "goto LAB_0004fd61;" goto statement_identifier ;) })) (if_statement "if ((int)param_1 < 0x197) {\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }" if (parenthesized_expression "((int)param_1 < 0x197)" ( (binary_expression "(int)param_1 < 0x197" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }" { (if_statement "if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }" if (parenthesized_expression "(param_1 == 0x194)" ( (binary_expression "param_1 == 0x194" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }" { (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) = (binary_expression "DAT_001c0e20._2_2_ & 0x3fff" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) & number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }" if (parenthesized_expression "((int)param_1 < 0x195)" ( (binary_expression "(int)param_1 < 0x195" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }" { (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) = (binary_expression "DAT_001c0e20._2_2_ & 0x3fff | 0x4000" (binary_expression "DAT_001c0e20._2_2_ & 0x3fff" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);" (call_expression "FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4)" identifier (argument_list "(*(undefined4 *)PTR_optarg_001befe4)" ( (pointer_expression "*(undefined4 *)PTR_optarg_001befe4" * (cast_expression "(undefined4 *)PTR_optarg_001befe4" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ))) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (param_1 == 0x198) {\n        FUN_0004f470();\n        return 1;\n      }" if (parenthesized_expression "(param_1 == 0x198)" ( (binary_expression "param_1 == 0x198" identifier == number_literal) )) (compound_statement "{\n        FUN_0004f470();\n        return 1;\n      }" { (expression_statement "FUN_0004f470();" (call_expression "FUN_0004f470()" identifier (argument_list "()" ( ))) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if ((int)param_1 < 0x198) {\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }" if (parenthesized_expression "((int)param_1 < 0x198)" ( (binary_expression "(int)param_1 < 0x198" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }" { (if_statement "if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }" if (parenthesized_expression "(DAT_001c0aa4 != (void *)0x0)" ( (binary_expression "DAT_001c0aa4 != (void *)0x0" identifier != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }" { (expression_statement "free(DAT_001c0aa4);" (call_expression "free(DAT_001c0aa4)" identifier (argument_list "(DAT_001c0aa4)" ( identifier ))) ;) (expression_statement "DAT_001c0aa4 = (void *)0x0;" (assignment_expression "DAT_001c0aa4 = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (expression_statement "pbVar3 = *(byte **)PTR_optarg_001befe4;" (assignment_expression "pbVar3 = *(byte **)PTR_optarg_001befe4" identifier = (pointer_expression "*(byte **)PTR_optarg_001befe4" * (cast_expression "(byte **)PTR_optarg_001befe4" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "bVar12 = false;" (assignment_expression "bVar12 = false" identifier = false) ;) (expression_statement "bVar14 = pbVar3 == (byte *)0x0;" (assignment_expression "bVar14 = pbVar3 == (byte *)0x0" identifier = (binary_expression "pbVar3 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (if_statement "if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }" if (parenthesized_expression "(bVar14)" ( identifier )) (compound_statement "{\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }" { (expression_statement "pbVar3 = &DAT_000732c8;" (assignment_expression "pbVar3 = &DAT_000732c8" identifier = (pointer_expression "&DAT_000732c8" & identifier)) ;) (expression_statement "*(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;" (assignment_expression "*(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8" (pointer_expression "*(undefined1 **)PTR_optarg_001befe4" * (cast_expression "(undefined1 **)PTR_optarg_001befe4" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) = (pointer_expression "&DAT_000732c8" & identifier)) ;) }) (else_clause "else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }" else (compound_statement "{\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }" { (expression_statement "iVar8 = 5;" (assignment_expression "iVar8 = 5" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) (expression_statement "pbVar11 = (byte *)0x6ebed;" (assignment_expression "pbVar11 = (byte *)0x6ebed" identifier = (cast_expression "(byte *)0x6ebed" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);" do (compound_statement "{\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar12 = *pbVar9 < *pbVar11;" (assignment_expression "bVar12 = *pbVar9 < *pbVar11" identifier = (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "bVar14 = *pbVar9 == *pbVar11;" (assignment_expression "bVar14 = *pbVar9 == *pbVar11" identifier = (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1" identifier = (binary_expression "pbVar9 + (uint)bVar15 * -2 + 1" (binary_expression "pbVar9 + (uint)bVar15 * -2" identifier + (binary_expression "(uint)bVar15 * -2" (cast_expression "(uint)bVar15" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1" identifier = (binary_expression "pbVar11 + (uint)bVar15 * -2 + 1" (binary_expression "pbVar11 + (uint)bVar15 * -2" identifier + (binary_expression "(uint)bVar15 * -2" (cast_expression "(uint)bVar15" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar14)" ( identifier )) ;) (if_statement "if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }" if (parenthesized_expression "((!bVar12 && !bVar14) == bVar12)" ( (binary_expression "(!bVar12 && !bVar14) == bVar12" (parenthesized_expression "(!bVar12 && !bVar14)" ( (binary_expression "!bVar12 && !bVar14" (unary_expression "!bVar12" ! identifier) && (unary_expression "!bVar14" ! identifier)) )) == identifier) )) (compound_statement "{\n            return 1;\n          }" { (return_statement "return 1;" return number_literal ;) })) }))) (expression_statement "DAT_001c0aa4 = (void *)xstrdup(pbVar3);" (assignment_expression "DAT_001c0aa4 = (void *)xstrdup(pbVar3)" identifier = (cast_expression "(void *)xstrdup(pbVar3)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xstrdup(pbVar3)" identifier (argument_list "(pbVar3)" ( identifier ))))) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (param_1 != 0x199) {\n        return 0;\n      }" if (parenthesized_expression "(param_1 != 0x199)" ( (binary_expression "param_1 != 0x199" identifier != number_literal) )) (compound_statement "{\n        return 0;\n      }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "pcVar10 = *(char **)PTR_optarg_001befe4;" (assignment_expression "pcVar10 = *(char **)PTR_optarg_001befe4" identifier = (pointer_expression "*(char **)PTR_optarg_001befe4" * (cast_expression "(char **)PTR_optarg_001befe4" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "iVar8 = strcasecmp(pcVar10,"none");" (assignment_expression "iVar8 = strcasecmp(pcVar10,"none")" identifier = (call_expression "strcasecmp(pcVar10,"none")" identifier (argument_list "(pcVar10,"none")" ( identifier , (string_literal ""none"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n        DAT_001c0e2c = 0;\n        return 1;\n      }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n        DAT_001c0e2c = 0;\n        return 1;\n      }" { (expression_statement "DAT_001c0e2c = 0;" (assignment_expression "DAT_001c0e2c = 0" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcasecmp(pcVar10,"zlib");" (assignment_expression "iVar8 = strcasecmp(pcVar10,"zlib")" identifier = (call_expression "strcasecmp(pcVar10,"zlib")" identifier (argument_list "(pcVar10,"zlib")" ( identifier , (string_literal ""zlib"" " string_content ") )))) ;) (if_statement "if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (compound_statement "{\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }" { (expression_statement "iVar8 = strcasecmp(pcVar10,"zlib-gnu");" (assignment_expression "iVar8 = strcasecmp(pcVar10,"zlib-gnu")" identifier = (call_expression "strcasecmp(pcVar10,"zlib-gnu")" identifier (argument_list "(pcVar10,"zlib-gnu")" ( identifier , (string_literal ""zlib-gnu"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e2c = 3;\n          return 1;\n        }" { (expression_statement "DAT_001c0e2c = 3;" (assignment_expression "DAT_001c0e2c = 3" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcasecmp(pcVar10,"zlib-gabi");" (assignment_expression "iVar8 = strcasecmp(pcVar10,"zlib-gabi")" identifier = (call_expression "strcasecmp(pcVar10,"zlib-gabi")" identifier (argument_list "(pcVar10,"zlib-gabi")" ( identifier , (string_literal ""zlib-gabi"" " string_content ") )))) ;) (if_statement "if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (compound_statement "{\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }" { (expression_statement "pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";" (assignment_expression "pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n"" identifier = (string_literal ""%F%P: invalid --compress-debug-sections option: `%s\'\n"" " string_content escape_sequence escape_sequence ")) ;) (goto_statement "goto LAB_0004f9a8;" goto statement_identifier ;) })) })) (expression_statement "DAT_001c0e2c = 5;" (assignment_expression "DAT_001c0e2c = 5" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (param_1 == 0x14d) {\n      DAT_001bfd3c = 0xffffffff;\n      return 1;\n    }" if (parenthesized_expression "(param_1 == 0x14d)" ( (binary_expression "param_1 == 0x14d" identifier == number_literal) )) (compound_statement "{\n      DAT_001bfd3c = 0xffffffff;\n      return 1;\n    }" { (expression_statement "DAT_001bfd3c = 0xffffffff;" (assignment_expression "DAT_001bfd3c = 0xffffffff" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (0x14d < (int)param_1) {\n      if (param_1 == 400) {\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }\n      if ((int)param_1 < 0x191) {\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x100;\n      return 1;\n    }" if (parenthesized_expression "(0x14d < (int)param_1)" ( (binary_expression "0x14d < (int)param_1" number_literal < (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n      if (param_1 == 400) {\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }\n      if ((int)param_1 < 0x191) {\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x100;\n      return 1;\n    }" { (if_statement "if (param_1 == 400) {\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }" if (parenthesized_expression "(param_1 == 400)" ( (binary_expression "param_1 == 400" identifier == number_literal) )) (compound_statement "{\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }" { (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff" identifier = (binary_expression "_DAT_001c0e24 & 0xfffffeff" identifier & number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if ((int)param_1 < 0x191) {\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }" if (parenthesized_expression "((int)param_1 < 0x191)" ( (binary_expression "(int)param_1 < 0x191" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }" { (if_statement "if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }" if (parenthesized_expression "(param_1 == 0x14e)" ( (binary_expression "param_1 == 0x14e" identifier == number_literal) )) (compound_statement "{\n          DAT_001bfd40 = 1;\n          return 1;\n        }" { (expression_statement "DAT_001bfd40 = 1;" (assignment_expression "DAT_001bfd40 = 1" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (return_statement "return 0;" return number_literal ;) })) (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 | 0x100;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 | 0x100" identifier = (binary_expression "_DAT_001c0e24 | 0x100" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (param_1 != 0x14b) {\n      if (param_1 == 0x14c) {\n        DAT_001bfd34 = 0;\n        return 1;\n      }\n      return 0;\n    }" if (parenthesized_expression "(param_1 != 0x14b)" ( (binary_expression "param_1 != 0x14b" identifier != number_literal) )) (compound_statement "{\n      if (param_1 == 0x14c) {\n        DAT_001bfd34 = 0;\n        return 1;\n      }\n      return 0;\n    }" { (if_statement "if (param_1 == 0x14c) {\n        DAT_001bfd34 = 0;\n        return 1;\n      }" if (parenthesized_expression "(param_1 == 0x14c)" ( (binary_expression "param_1 == 0x14c" identifier == number_literal) )) (compound_statement "{\n        DAT_001bfd34 = 0;\n        return 1;\n      }" { (expression_statement "DAT_001bfd34 = 0;" (assignment_expression "DAT_001bfd34 = 0" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (return_statement "return 0;" return number_literal ;) })) (expression_statement "DAT_001bfd34 = 1;" (assignment_expression "DAT_001bfd34 = 1" identifier = number_literal) ;) (if_statement "if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      DAT_001bfd34 = 1;\n      return 1;\n    }" if (parenthesized_expression "(*(char **)PTR_optarg_001befe4 == (char *)0x0)" ( (binary_expression "*(char **)PTR_optarg_001befe4 == (char *)0x0" (pointer_expression "*(char **)PTR_optarg_001befe4" * (cast_expression "(char **)PTR_optarg_001befe4" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      DAT_001bfd34 = 1;\n      return 1;\n    }" { (expression_statement "DAT_001bfd34 = 1;" (assignment_expression "DAT_001bfd34 = 1" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "DAT_001bfd44 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);" (assignment_expression "DAT_001bfd44 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0)" identifier = (call_expression "strtoul(*(char **)PTR_optarg_001befe4,local_20,0)" identifier (argument_list "(*(char **)PTR_optarg_001befe4,local_20,0)" ( (pointer_expression "*(char **)PTR_optarg_001befe4" * (cast_expression "(char **)PTR_optarg_001befe4" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) , identifier , number_literal )))) ;) (expression_statement "DAT_001bfd48 = 0;" (assignment_expression "DAT_001bfd48 = 0" identifier = number_literal) ;) (if_statement "if (((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&\n       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)) {\n      DAT_001bfd48 = 0;\n      return 1;\n    }" if (parenthesized_expression "(((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&\n       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0))" ( (binary_expression "((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&\n       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)" (parenthesized_expression "((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1)))" ( (binary_expression "(*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))" (parenthesized_expression "(*local_20[0] == '\0')" ( (binary_expression "*local_20[0] == '\0'" (pointer_expression "*local_20[0]" * (subscript_expression "local_20[0]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))" ( (comma_expression "iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1)" (assignment_expression "iVar8 = (DAT_001bfd44 != 0) - 1" identifier = (binary_expression "(DAT_001bfd44 != 0) - 1" (parenthesized_expression "(DAT_001bfd44 != 0)" ( (binary_expression "DAT_001bfd44 != 0" identifier != number_literal) )) - number_literal)) , (binary_expression "iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1)" (binary_expression "iVar8 != 0" identifier != number_literal) || (binary_expression "(uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1)" (binary_expression "(uint)-iVar8" (parenthesized_expression "(uint)" ( identifier )) - identifier) < (call_expression "(uint)(0xffe < DAT_001bfd44 - 1)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0xffe < DAT_001bfd44 - 1)" ( (binary_expression "0xffe < DAT_001bfd44 - 1" number_literal < (binary_expression "DAT_001bfd44 - 1" identifier - number_literal)) )))))) ))) )) && (parenthesized_expression "((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)" ( (binary_expression "(DAT_001bfd44 - 1 & DAT_001bfd44) == 0" (parenthesized_expression "(DAT_001bfd44 - 1 & DAT_001bfd44)" ( (binary_expression "DAT_001bfd44 - 1 & DAT_001bfd44" (binary_expression "DAT_001bfd44 - 1" identifier - number_literal) & identifier) )) == number_literal) ))) )) (compound_statement "{\n      DAT_001bfd48 = 0;\n      return 1;\n    }" { (expression_statement "DAT_001bfd48 = 0;" (assignment_expression "DAT_001bfd48 = 0" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "pcVar10 = *(char **)puVar1;" (assignment_expression "pcVar10 = *(char **)puVar1" identifier = (pointer_expression "*(char **)puVar1" * (cast_expression "(char **)puVar1" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "pcVar4 = "%F%P: invalid pagesize `%s\'\n";" (assignment_expression "pcVar4 = "%F%P: invalid pagesize `%s\'\n"" identifier = (string_literal ""%F%P: invalid pagesize `%s\'\n"" " string_content escape_sequence escape_sequence ")) ;) }))) (labeled_statement "LAB_0004f9a8:\n  uVar7 = dcgettext(0,pcVar4,5);" statement_identifier : (expression_statement "uVar7 = dcgettext(0,pcVar4,5);" (assignment_expression "uVar7 = dcgettext(0,pcVar4,5)" identifier = (call_expression "dcgettext(0,pcVar4,5)" identifier (argument_list "(0,pcVar4,5)" ( number_literal , identifier , number_literal )))) ;)) (expression_statement "FUN_00034d60(uVar7,pcVar10);" (call_expression "FUN_00034d60(uVar7,pcVar10)" identifier (argument_list "(uVar7,pcVar10)" ( identifier , identifier ))) ;) (return_statement "return 1;" return number_literal ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n/* WARNING: Unknown calling convention */\n\nbfd_boolean gldelf32lppcsim_handle_option(int optc)\n\n{\n  undefined4 uVar1;\n  undefined *puVar2;\n  undefined1 uVar3;\n  byte *pbVar4;\n  char *pcVar5;\n  ulong uVar6;\n  char *pcVar7;\n  int iVar8;\n  byte *pbVar9;\n  byte *pbVar10;\n  bool bVar11;\n  bool bVar12;\n  bool bVar13;\n  byte bVar14;\n  char *end;\n  undefined4 uStack_14;\n  \n  puVar2 = PTR_optarg_001befe4;\n  bVar14 = 0;\n  uStack_14 = 0x4f579;\n  if (optc == 0x14a) {\n    params.emit_stub_syms = 0;\n    return 1;\n  }\n  uVar3 = link_info._4_1_;\n  if (optc < 0x14b) {\n    if (optc == 0x142) {\n      params.no_tls_get_addr_opt = 1;\n      return 1;\n    }\n    if (0x142 < optc) {\n      if (optc == 0x146) {\n        params.plt_stub_align = 0;\n        return 1;\n      }\n      if (0x146 < optc) {\n        if (optc == 0x148) {\n          old_got = 1;\n          return 1;\n        }\n        if (optc < 0x149) {\n          no_inline_opt = 1;\n          return 1;\n        }\n        params.emit_stub_syms = 1;\n        return 1;\n      }\n      if (optc == 0x144) {\n        params.plt_style = PLT_OLD;\n        return 1;\n      }\n      if (optc < 0x145) {\n        params.plt_style = PLT_NEW;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        params.plt_stub_align = 5;\n        return 1;\n      }\n      uVar6 = strtoul(*(char **)PTR_optarg_001befe4,&end,0);\n      if ((*end == '\0') && (uVar6 < 6)) {\n        params.plt_stub_align = uVar6;\n        return 1;\n      }\n      uVar1 = *(undefined4 *)puVar2;\n      pcVar7 = (char *)dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      einfo(pcVar7,uVar1);\n      params.plt_stub_align = uVar6;\n      return 1;\n    }\n    if (optc == 0xc2) {\n      notlsopt = 1;\n      params.no_tls_get_addr_opt = 1;\n      return 0;\n    }\n    if (0xc2 < optc) {\n      if (optc == 0x12e) {\n        link_info._4_4_ = link_info._4_4_ | 0x200;\n        return 1;\n      }\n      if (optc != 0x141) {\n        if (optc == 0x12d) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      notlsopt = 1;\n      return 1;\n    }\n    if (optc == 0x50) {\n      gldelf32lppcsim_append_to_separated_string(&depaudit,*(char **)PTR_optarg_001befe4);\n      return 1;\n    }\n    bVar11 = (uint)optc < 0x7a;\n    bVar13 = optc == 0x7a;\n    if (!bVar13) {\n      return 0;\n    }\n    iVar8 = 5;\n    pbVar4 = *(byte **)PTR_optarg_001befe4;\n    pbVar9 = pbVar4;\n    pbVar10 = (byte *)0x6ed7c;\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar11 = *pbVar9 < *pbVar10;\n      bVar13 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    } while (bVar13);\n    bVar12 = false;\n    bVar11 = (!bVar11 && !bVar13) == bVar11;\n    if (bVar11) {\n      link_info._2_2_ = link_info._2_2_ | 0x60;\n      return 1;\n    }\n    iVar8 = 7;\n    pbVar9 = pbVar4;\n    pbVar10 = (byte *)"undefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar10;\n      bVar11 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    } while (bVar11);\n    bVar13 = false;\n    bVar11 = (!bVar12 && !bVar11) == bVar12;\n    if (bVar11) {\n      link_info._2_2_ = link_info._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }\n    iVar8 = 8;\n    pbVar9 = pbVar4;\n    pbVar10 = (byte *)"muldefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar10;\n      bVar11 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    } while (bVar11);\n    bVar12 = false;\n    bVar11 = (!bVar13 && !bVar11) == bVar13;\n    if (bVar11) {\n      link_info._4_4_ = link_info._4_4_ | 0x800;\n      return 1;\n    }\n    iVar8 = 0xe;\n    pbVar9 = pbVar4;\n    pbVar10 = (byte *)"max-page-size=";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar10;\n      bVar11 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    } while (bVar11);\n    bVar13 = false;\n    bVar11 = (!bVar12 && !bVar11) == bVar12;\n    if (bVar11) {\n      config.maxpagesize._0_4_ = strtoul((char *)(pbVar4 + 0xe),&end,0);\n      config.maxpagesize._4_4_ = 0;\n      if ((*end == '\0') && (((ulong)config.maxpagesize & (ulong)config.maxpagesize - 1) == 0)) {\n        config.maxpagesize._4_4_ = 0;\n        return 1;\n      }\n      pcVar5 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar7 = (char *)(*(int *)puVar2 + 0xe);\n    }\n    else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar4;\n      pbVar10 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar13 = *pbVar9 < *pbVar10;\n        bVar11 = *pbVar9 == *pbVar10;\n        pbVar9 = pbVar9 + 1;\n        pbVar10 = pbVar10 + 1;\n      } while (bVar11);\n      bVar12 = false;\n      bVar11 = (!bVar13 && !bVar11) == bVar13;\n      if (!bVar11) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar4;\n        pbVar10 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        bVar13 = false;\n        bVar11 = (!bVar12 && !bVar11) == bVar12;\n        if (bVar11) {\n          link_info.stacksize._0_4_ = strtoul((char *)(pbVar4 + 0xb),&end,0);\n          link_info.stacksize._4_4_ = 0;\n          if (*end != '\0') {\n            iVar8 = *(int *)puVar2;\n            pcVar7 = (char *)dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar4 + 0xb);\n            einfo(pcVar7,iVar8 + 0xb);\n          }\n          if (link_info.stacksize._4_4_ != 0 || (ulong)link_info.stacksize != 0) {\n            return 1;\n          }\n          link_info.stacksize._0_4_ = 0xffffffff;\n          link_info.stacksize._4_4_ = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar4;\n        pbVar10 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        if ((!bVar13 && !bVar11) == bVar13) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"noexecstack");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"globalaudit");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"global");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"initfirst");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"interpose");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"loadfltr");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodefaultlib");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodelete");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodlopen");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodump");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"now");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags | 8;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"lazy");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags & 0xfffffff7;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"origin");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags | 1;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"combreloc");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocombreloc");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocopyreloc");\n        if (iVar8 == 0) {\n          link_info._0_1_ = link_info._0_1_ | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"relro");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"norelro");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"separate-code");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"noseparate-code");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"common");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocommon");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"text");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar4,"textoff"), iVar8 == 0)) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          link_info.dynamic_undefined_weak = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          link_info.dynamic_undefined_weak = 0;\n          return 1;\n        }\n        pcVar7 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        pcVar7 = (char *)dcgettext(0,pcVar7,5);\n        einfo(pcVar7,pbVar4);\n        return 1;\n      }\n      config.commonpagesize._0_4_ = strtoul((char *)(pbVar4 + 0x11),&end,0);\n      config.commonpagesize._4_4_ = 0;\n      if ((*end == '\0') && (((ulong)config.commonpagesize & (ulong)config.commonpagesize - 1) == 0)\n         ) {\n        config.commonpagesize._4_4_ = 0;\n        return 1;\n      }\n      pcVar5 = "%F%P: invalid common page size `%s\'\n";\n      pcVar7 = (char *)(*(int *)puVar2 + 0x11);\n    }\n  }\n  else {\n    if (optc == 0x192) {\n      link_info._2_2_ = link_info._2_2_ | 0x1e0;\n      link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 4;\n      return 1;\n    }\n    if (0x192 < optc) {\n      if (optc == 0x196) {\n        pbVar4 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar11 = false;\n        bVar13 = (link_info._4_4_ & 0xf3) == 0;\n        link_info._4_4_ = link_info._4_4_ & 0xfffffff3;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar11 = *pbVar9 < *pbVar10;\n          bVar13 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar13);\n        bVar12 = false;\n        bVar11 = (!bVar11 && !bVar13) == bVar11;\n        if (bVar11) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        bVar13 = false;\n        bVar11 = (!bVar12 && !bVar11) == bVar12;\n        if (bVar11) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        if ((!bVar13 && !bVar11) == bVar13) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar7 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if (optc < 0x197) {\n        if (optc == 0x194) {\n          link_info._2_2_ = link_info._2_2_ & 0x3fff;\n          return 1;\n        }\n        if (optc < 0x195) {\n          link_info._2_2_ = link_info._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        add_excluded_libs(*(char **)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (optc == 0x198) {\n        gldelf32lppcsim_append_to_separated_string(&audit,*(char **)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (optc < 0x198) {\n        if (emit_note_gnu_build_id != (char *)0x0) {\n          free(emit_note_gnu_build_id);\n          emit_note_gnu_build_id = (char *)0x0;\n        }\n        pbVar4 = *(byte **)PTR_optarg_001befe4;\n        bVar11 = false;\n        bVar13 = pbVar4 == (byte *)0x0;\n        if (bVar13) {\n          pbVar4 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar4;\n          pbVar10 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar11 = *pbVar9 < *pbVar10;\n            bVar13 = *pbVar9 == *pbVar10;\n            pbVar9 = pbVar9 + (uint)bVar14 * -2 + 1;\n            pbVar10 = pbVar10 + (uint)bVar14 * -2 + 1;\n          } while (bVar13);\n          if ((!bVar11 && !bVar13) == bVar11) {\n            return 1;\n          }\n        }\n        emit_note_gnu_build_id = (char *)xstrdup(pbVar4);\n        return 1;\n      }\n      if (optc != 0x199) {\n        return 0;\n      }\n      pcVar7 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar7,"none");\n      if (iVar8 == 0) {\n        link_info.compress_debug = COMPRESS_DEBUG_NONE;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar7,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar7,"zlib-gnu");\n        if (iVar8 == 0) {\n          link_info.compress_debug = COMPRESS_DEBUG_GNU_ZLIB;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar7,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar5 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      link_info.compress_debug = COMPRESS_DEBUG_GABI_ZLIB;\n      return 1;\n    }\n    if (optc == 0x14d) {\n      params.pic_fixup = -1;\n      return 1;\n    }\n    if (0x14d < optc) {\n      if (optc == 400) {\n        link_info._4_4_ = link_info._4_4_ & 0xfffffeff;\n        return 1;\n      }\n      if (optc < 0x191) {\n        if (optc == 0x14e) {\n          params.vle_reloc_fixup = 1;\n          return 1;\n        }\n        return 0;\n      }\n      link_info._4_4_ = link_info._4_4_ | 0x100;\n      return 1;\n    }\n    if (optc != 0x14b) {\n      if (optc == 0x14c) {\n        params.ppc476_workaround = 0;\n        return 1;\n      }\n      return 0;\n    }\n    params.ppc476_workaround = 1;\n    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      params.ppc476_workaround = 1;\n      return 1;\n    }\n    params.pagesize._0_4_ = strtoul(*(char **)PTR_optarg_001befe4,&end,0);\n    params.pagesize._4_4_ = 0;\n    if (((*end == '\0') &&\n        (iVar8 = ((ulong)params.pagesize != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < (ulong)params.pagesize - 1))) &&\n       (((ulong)params.pagesize - 1 & (ulong)params.pagesize) == 0)) {\n      params.pagesize._4_4_ = 0;\n      return 1;\n    }\n    pcVar7 = *(char **)puVar2;\n    pcVar5 = "%F%P: invalid pagesize `%s\'\n";\n  }\nLAB_0004f9a8:\n  pcVar5 = (char *)dcgettext(0,pcVar5,5);\n  einfo(pcVar5,pcVar7);\n  return 1;\n}\n\n" comment comment (function_definition "bfd_boolean gldelf32lppcsim_handle_option(int optc)\n\n{\n  undefined4 uVar1;\n  undefined *puVar2;\n  undefined1 uVar3;\n  byte *pbVar4;\n  char *pcVar5;\n  ulong uVar6;\n  char *pcVar7;\n  int iVar8;\n  byte *pbVar9;\n  byte *pbVar10;\n  bool bVar11;\n  bool bVar12;\n  bool bVar13;\n  byte bVar14;\n  char *end;\n  undefined4 uStack_14;\n  \n  puVar2 = PTR_optarg_001befe4;\n  bVar14 = 0;\n  uStack_14 = 0x4f579;\n  if (optc == 0x14a) {\n    params.emit_stub_syms = 0;\n    return 1;\n  }\n  uVar3 = link_info._4_1_;\n  if (optc < 0x14b) {\n    if (optc == 0x142) {\n      params.no_tls_get_addr_opt = 1;\n      return 1;\n    }\n    if (0x142 < optc) {\n      if (optc == 0x146) {\n        params.plt_stub_align = 0;\n        return 1;\n      }\n      if (0x146 < optc) {\n        if (optc == 0x148) {\n          old_got = 1;\n          return 1;\n        }\n        if (optc < 0x149) {\n          no_inline_opt = 1;\n          return 1;\n        }\n        params.emit_stub_syms = 1;\n        return 1;\n      }\n      if (optc == 0x144) {\n        params.plt_style = PLT_OLD;\n        return 1;\n      }\n      if (optc < 0x145) {\n        params.plt_style = PLT_NEW;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        params.plt_stub_align = 5;\n        return 1;\n      }\n      uVar6 = strtoul(*(char **)PTR_optarg_001befe4,&end,0);\n      if ((*end == '\0') && (uVar6 < 6)) {\n        params.plt_stub_align = uVar6;\n        return 1;\n      }\n      uVar1 = *(undefined4 *)puVar2;\n      pcVar7 = (char *)dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      einfo(pcVar7,uVar1);\n      params.plt_stub_align = uVar6;\n      return 1;\n    }\n    if (optc == 0xc2) {\n      notlsopt = 1;\n      params.no_tls_get_addr_opt = 1;\n      return 0;\n    }\n    if (0xc2 < optc) {\n      if (optc == 0x12e) {\n        link_info._4_4_ = link_info._4_4_ | 0x200;\n        return 1;\n      }\n      if (optc != 0x141) {\n        if (optc == 0x12d) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      notlsopt = 1;\n      return 1;\n    }\n    if (optc == 0x50) {\n      gldelf32lppcsim_append_to_separated_string(&depaudit,*(char **)PTR_optarg_001befe4);\n      return 1;\n    }\n    bVar11 = (uint)optc < 0x7a;\n    bVar13 = optc == 0x7a;\n    if (!bVar13) {\n      return 0;\n    }\n    iVar8 = 5;\n    pbVar4 = *(byte **)PTR_optarg_001befe4;\n    pbVar9 = pbVar4;\n    pbVar10 = (byte *)0x6ed7c;\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar11 = *pbVar9 < *pbVar10;\n      bVar13 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    } while (bVar13);\n    bVar12 = false;\n    bVar11 = (!bVar11 && !bVar13) == bVar11;\n    if (bVar11) {\n      link_info._2_2_ = link_info._2_2_ | 0x60;\n      return 1;\n    }\n    iVar8 = 7;\n    pbVar9 = pbVar4;\n    pbVar10 = (byte *)"undefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar10;\n      bVar11 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    } while (bVar11);\n    bVar13 = false;\n    bVar11 = (!bVar12 && !bVar11) == bVar12;\n    if (bVar11) {\n      link_info._2_2_ = link_info._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }\n    iVar8 = 8;\n    pbVar9 = pbVar4;\n    pbVar10 = (byte *)"muldefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar10;\n      bVar11 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    } while (bVar11);\n    bVar12 = false;\n    bVar11 = (!bVar13 && !bVar11) == bVar13;\n    if (bVar11) {\n      link_info._4_4_ = link_info._4_4_ | 0x800;\n      return 1;\n    }\n    iVar8 = 0xe;\n    pbVar9 = pbVar4;\n    pbVar10 = (byte *)"max-page-size=";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar10;\n      bVar11 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    } while (bVar11);\n    bVar13 = false;\n    bVar11 = (!bVar12 && !bVar11) == bVar12;\n    if (bVar11) {\n      config.maxpagesize._0_4_ = strtoul((char *)(pbVar4 + 0xe),&end,0);\n      config.maxpagesize._4_4_ = 0;\n      if ((*end == '\0') && (((ulong)config.maxpagesize & (ulong)config.maxpagesize - 1) == 0)) {\n        config.maxpagesize._4_4_ = 0;\n        return 1;\n      }\n      pcVar5 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar7 = (char *)(*(int *)puVar2 + 0xe);\n    }\n    else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar4;\n      pbVar10 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar13 = *pbVar9 < *pbVar10;\n        bVar11 = *pbVar9 == *pbVar10;\n        pbVar9 = pbVar9 + 1;\n        pbVar10 = pbVar10 + 1;\n      } while (bVar11);\n      bVar12 = false;\n      bVar11 = (!bVar13 && !bVar11) == bVar13;\n      if (!bVar11) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar4;\n        pbVar10 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        bVar13 = false;\n        bVar11 = (!bVar12 && !bVar11) == bVar12;\n        if (bVar11) {\n          link_info.stacksize._0_4_ = strtoul((char *)(pbVar4 + 0xb),&end,0);\n          link_info.stacksize._4_4_ = 0;\n          if (*end != '\0') {\n            iVar8 = *(int *)puVar2;\n            pcVar7 = (char *)dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar4 + 0xb);\n            einfo(pcVar7,iVar8 + 0xb);\n          }\n          if (link_info.stacksize._4_4_ != 0 || (ulong)link_info.stacksize != 0) {\n            return 1;\n          }\n          link_info.stacksize._0_4_ = 0xffffffff;\n          link_info.stacksize._4_4_ = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar4;\n        pbVar10 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        if ((!bVar13 && !bVar11) == bVar13) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"noexecstack");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"globalaudit");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"global");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"initfirst");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"interpose");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"loadfltr");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodefaultlib");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodelete");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodlopen");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodump");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"now");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags | 8;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"lazy");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags & 0xfffffff7;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"origin");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags | 1;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"combreloc");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocombreloc");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocopyreloc");\n        if (iVar8 == 0) {\n          link_info._0_1_ = link_info._0_1_ | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"relro");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"norelro");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"separate-code");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"noseparate-code");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"common");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocommon");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"text");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar4,"textoff"), iVar8 == 0)) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          link_info.dynamic_undefined_weak = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          link_info.dynamic_undefined_weak = 0;\n          return 1;\n        }\n        pcVar7 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        pcVar7 = (char *)dcgettext(0,pcVar7,5);\n        einfo(pcVar7,pbVar4);\n        return 1;\n      }\n      config.commonpagesize._0_4_ = strtoul((char *)(pbVar4 + 0x11),&end,0);\n      config.commonpagesize._4_4_ = 0;\n      if ((*end == '\0') && (((ulong)config.commonpagesize & (ulong)config.commonpagesize - 1) == 0)\n         ) {\n        config.commonpagesize._4_4_ = 0;\n        return 1;\n      }\n      pcVar5 = "%F%P: invalid common page size `%s\'\n";\n      pcVar7 = (char *)(*(int *)puVar2 + 0x11);\n    }\n  }\n  else {\n    if (optc == 0x192) {\n      link_info._2_2_ = link_info._2_2_ | 0x1e0;\n      link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 4;\n      return 1;\n    }\n    if (0x192 < optc) {\n      if (optc == 0x196) {\n        pbVar4 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar11 = false;\n        bVar13 = (link_info._4_4_ & 0xf3) == 0;\n        link_info._4_4_ = link_info._4_4_ & 0xfffffff3;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar11 = *pbVar9 < *pbVar10;\n          bVar13 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar13);\n        bVar12 = false;\n        bVar11 = (!bVar11 && !bVar13) == bVar11;\n        if (bVar11) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        bVar13 = false;\n        bVar11 = (!bVar12 && !bVar11) == bVar12;\n        if (bVar11) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        if ((!bVar13 && !bVar11) == bVar13) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar7 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if (optc < 0x197) {\n        if (optc == 0x194) {\n          link_info._2_2_ = link_info._2_2_ & 0x3fff;\n          return 1;\n        }\n        if (optc < 0x195) {\n          link_info._2_2_ = link_info._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        add_excluded_libs(*(char **)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (optc == 0x198) {\n        gldelf32lppcsim_append_to_separated_string(&audit,*(char **)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (optc < 0x198) {\n        if (emit_note_gnu_build_id != (char *)0x0) {\n          free(emit_note_gnu_build_id);\n          emit_note_gnu_build_id = (char *)0x0;\n        }\n        pbVar4 = *(byte **)PTR_optarg_001befe4;\n        bVar11 = false;\n        bVar13 = pbVar4 == (byte *)0x0;\n        if (bVar13) {\n          pbVar4 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar4;\n          pbVar10 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar11 = *pbVar9 < *pbVar10;\n            bVar13 = *pbVar9 == *pbVar10;\n            pbVar9 = pbVar9 + (uint)bVar14 * -2 + 1;\n            pbVar10 = pbVar10 + (uint)bVar14 * -2 + 1;\n          } while (bVar13);\n          if ((!bVar11 && !bVar13) == bVar11) {\n            return 1;\n          }\n        }\n        emit_note_gnu_build_id = (char *)xstrdup(pbVar4);\n        return 1;\n      }\n      if (optc != 0x199) {\n        return 0;\n      }\n      pcVar7 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar7,"none");\n      if (iVar8 == 0) {\n        link_info.compress_debug = COMPRESS_DEBUG_NONE;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar7,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar7,"zlib-gnu");\n        if (iVar8 == 0) {\n          link_info.compress_debug = COMPRESS_DEBUG_GNU_ZLIB;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar7,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar5 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      link_info.compress_debug = COMPRESS_DEBUG_GABI_ZLIB;\n      return 1;\n    }\n    if (optc == 0x14d) {\n      params.pic_fixup = -1;\n      return 1;\n    }\n    if (0x14d < optc) {\n      if (optc == 400) {\n        link_info._4_4_ = link_info._4_4_ & 0xfffffeff;\n        return 1;\n      }\n      if (optc < 0x191) {\n        if (optc == 0x14e) {\n          params.vle_reloc_fixup = 1;\n          return 1;\n        }\n        return 0;\n      }\n      link_info._4_4_ = link_info._4_4_ | 0x100;\n      return 1;\n    }\n    if (optc != 0x14b) {\n      if (optc == 0x14c) {\n        params.ppc476_workaround = 0;\n        return 1;\n      }\n      return 0;\n    }\n    params.ppc476_workaround = 1;\n    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      params.ppc476_workaround = 1;\n      return 1;\n    }\n    params.pagesize._0_4_ = strtoul(*(char **)PTR_optarg_001befe4,&end,0);\n    params.pagesize._4_4_ = 0;\n    if (((*end == '\0') &&\n        (iVar8 = ((ulong)params.pagesize != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < (ulong)params.pagesize - 1))) &&\n       (((ulong)params.pagesize - 1 & (ulong)params.pagesize) == 0)) {\n      params.pagesize._4_4_ = 0;\n      return 1;\n    }\n    pcVar7 = *(char **)puVar2;\n    pcVar5 = "%F%P: invalid pagesize `%s\'\n";\n  }\nLAB_0004f9a8:\n  pcVar5 = (char *)dcgettext(0,pcVar5,5);\n  einfo(pcVar5,pcVar7);\n  return 1;\n}" type_identifier (function_declarator "gldelf32lppcsim_handle_option(int optc)" identifier (parameter_list "(int optc)" ( (parameter_declaration "int optc" primitive_type identifier) ))) (compound_statement "{\n  undefined4 uVar1;\n  undefined *puVar2;\n  undefined1 uVar3;\n  byte *pbVar4;\n  char *pcVar5;\n  ulong uVar6;\n  char *pcVar7;\n  int iVar8;\n  byte *pbVar9;\n  byte *pbVar10;\n  bool bVar11;\n  bool bVar12;\n  bool bVar13;\n  byte bVar14;\n  char *end;\n  undefined4 uStack_14;\n  \n  puVar2 = PTR_optarg_001befe4;\n  bVar14 = 0;\n  uStack_14 = 0x4f579;\n  if (optc == 0x14a) {\n    params.emit_stub_syms = 0;\n    return 1;\n  }\n  uVar3 = link_info._4_1_;\n  if (optc < 0x14b) {\n    if (optc == 0x142) {\n      params.no_tls_get_addr_opt = 1;\n      return 1;\n    }\n    if (0x142 < optc) {\n      if (optc == 0x146) {\n        params.plt_stub_align = 0;\n        return 1;\n      }\n      if (0x146 < optc) {\n        if (optc == 0x148) {\n          old_got = 1;\n          return 1;\n        }\n        if (optc < 0x149) {\n          no_inline_opt = 1;\n          return 1;\n        }\n        params.emit_stub_syms = 1;\n        return 1;\n      }\n      if (optc == 0x144) {\n        params.plt_style = PLT_OLD;\n        return 1;\n      }\n      if (optc < 0x145) {\n        params.plt_style = PLT_NEW;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        params.plt_stub_align = 5;\n        return 1;\n      }\n      uVar6 = strtoul(*(char **)PTR_optarg_001befe4,&end,0);\n      if ((*end == '\0') && (uVar6 < 6)) {\n        params.plt_stub_align = uVar6;\n        return 1;\n      }\n      uVar1 = *(undefined4 *)puVar2;\n      pcVar7 = (char *)dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      einfo(pcVar7,uVar1);\n      params.plt_stub_align = uVar6;\n      return 1;\n    }\n    if (optc == 0xc2) {\n      notlsopt = 1;\n      params.no_tls_get_addr_opt = 1;\n      return 0;\n    }\n    if (0xc2 < optc) {\n      if (optc == 0x12e) {\n        link_info._4_4_ = link_info._4_4_ | 0x200;\n        return 1;\n      }\n      if (optc != 0x141) {\n        if (optc == 0x12d) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      notlsopt = 1;\n      return 1;\n    }\n    if (optc == 0x50) {\n      gldelf32lppcsim_append_to_separated_string(&depaudit,*(char **)PTR_optarg_001befe4);\n      return 1;\n    }\n    bVar11 = (uint)optc < 0x7a;\n    bVar13 = optc == 0x7a;\n    if (!bVar13) {\n      return 0;\n    }\n    iVar8 = 5;\n    pbVar4 = *(byte **)PTR_optarg_001befe4;\n    pbVar9 = pbVar4;\n    pbVar10 = (byte *)0x6ed7c;\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar11 = *pbVar9 < *pbVar10;\n      bVar13 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    } while (bVar13);\n    bVar12 = false;\n    bVar11 = (!bVar11 && !bVar13) == bVar11;\n    if (bVar11) {\n      link_info._2_2_ = link_info._2_2_ | 0x60;\n      return 1;\n    }\n    iVar8 = 7;\n    pbVar9 = pbVar4;\n    pbVar10 = (byte *)"undefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar10;\n      bVar11 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    } while (bVar11);\n    bVar13 = false;\n    bVar11 = (!bVar12 && !bVar11) == bVar12;\n    if (bVar11) {\n      link_info._2_2_ = link_info._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }\n    iVar8 = 8;\n    pbVar9 = pbVar4;\n    pbVar10 = (byte *)"muldefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar10;\n      bVar11 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    } while (bVar11);\n    bVar12 = false;\n    bVar11 = (!bVar13 && !bVar11) == bVar13;\n    if (bVar11) {\n      link_info._4_4_ = link_info._4_4_ | 0x800;\n      return 1;\n    }\n    iVar8 = 0xe;\n    pbVar9 = pbVar4;\n    pbVar10 = (byte *)"max-page-size=";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar10;\n      bVar11 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    } while (bVar11);\n    bVar13 = false;\n    bVar11 = (!bVar12 && !bVar11) == bVar12;\n    if (bVar11) {\n      config.maxpagesize._0_4_ = strtoul((char *)(pbVar4 + 0xe),&end,0);\n      config.maxpagesize._4_4_ = 0;\n      if ((*end == '\0') && (((ulong)config.maxpagesize & (ulong)config.maxpagesize - 1) == 0)) {\n        config.maxpagesize._4_4_ = 0;\n        return 1;\n      }\n      pcVar5 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar7 = (char *)(*(int *)puVar2 + 0xe);\n    }\n    else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar4;\n      pbVar10 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar13 = *pbVar9 < *pbVar10;\n        bVar11 = *pbVar9 == *pbVar10;\n        pbVar9 = pbVar9 + 1;\n        pbVar10 = pbVar10 + 1;\n      } while (bVar11);\n      bVar12 = false;\n      bVar11 = (!bVar13 && !bVar11) == bVar13;\n      if (!bVar11) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar4;\n        pbVar10 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        bVar13 = false;\n        bVar11 = (!bVar12 && !bVar11) == bVar12;\n        if (bVar11) {\n          link_info.stacksize._0_4_ = strtoul((char *)(pbVar4 + 0xb),&end,0);\n          link_info.stacksize._4_4_ = 0;\n          if (*end != '\0') {\n            iVar8 = *(int *)puVar2;\n            pcVar7 = (char *)dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar4 + 0xb);\n            einfo(pcVar7,iVar8 + 0xb);\n          }\n          if (link_info.stacksize._4_4_ != 0 || (ulong)link_info.stacksize != 0) {\n            return 1;\n          }\n          link_info.stacksize._0_4_ = 0xffffffff;\n          link_info.stacksize._4_4_ = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar4;\n        pbVar10 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        if ((!bVar13 && !bVar11) == bVar13) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"noexecstack");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"globalaudit");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"global");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"initfirst");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"interpose");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"loadfltr");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodefaultlib");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodelete");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodlopen");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodump");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"now");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags | 8;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"lazy");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags & 0xfffffff7;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"origin");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags | 1;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"combreloc");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocombreloc");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocopyreloc");\n        if (iVar8 == 0) {\n          link_info._0_1_ = link_info._0_1_ | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"relro");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"norelro");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"separate-code");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"noseparate-code");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"common");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocommon");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"text");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar4,"textoff"), iVar8 == 0)) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          link_info.dynamic_undefined_weak = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          link_info.dynamic_undefined_weak = 0;\n          return 1;\n        }\n        pcVar7 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        pcVar7 = (char *)dcgettext(0,pcVar7,5);\n        einfo(pcVar7,pbVar4);\n        return 1;\n      }\n      config.commonpagesize._0_4_ = strtoul((char *)(pbVar4 + 0x11),&end,0);\n      config.commonpagesize._4_4_ = 0;\n      if ((*end == '\0') && (((ulong)config.commonpagesize & (ulong)config.commonpagesize - 1) == 0)\n         ) {\n        config.commonpagesize._4_4_ = 0;\n        return 1;\n      }\n      pcVar5 = "%F%P: invalid common page size `%s\'\n";\n      pcVar7 = (char *)(*(int *)puVar2 + 0x11);\n    }\n  }\n  else {\n    if (optc == 0x192) {\n      link_info._2_2_ = link_info._2_2_ | 0x1e0;\n      link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 4;\n      return 1;\n    }\n    if (0x192 < optc) {\n      if (optc == 0x196) {\n        pbVar4 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar11 = false;\n        bVar13 = (link_info._4_4_ & 0xf3) == 0;\n        link_info._4_4_ = link_info._4_4_ & 0xfffffff3;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar11 = *pbVar9 < *pbVar10;\n          bVar13 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar13);\n        bVar12 = false;\n        bVar11 = (!bVar11 && !bVar13) == bVar11;\n        if (bVar11) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        bVar13 = false;\n        bVar11 = (!bVar12 && !bVar11) == bVar12;\n        if (bVar11) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        if ((!bVar13 && !bVar11) == bVar13) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar7 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if (optc < 0x197) {\n        if (optc == 0x194) {\n          link_info._2_2_ = link_info._2_2_ & 0x3fff;\n          return 1;\n        }\n        if (optc < 0x195) {\n          link_info._2_2_ = link_info._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        add_excluded_libs(*(char **)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (optc == 0x198) {\n        gldelf32lppcsim_append_to_separated_string(&audit,*(char **)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (optc < 0x198) {\n        if (emit_note_gnu_build_id != (char *)0x0) {\n          free(emit_note_gnu_build_id);\n          emit_note_gnu_build_id = (char *)0x0;\n        }\n        pbVar4 = *(byte **)PTR_optarg_001befe4;\n        bVar11 = false;\n        bVar13 = pbVar4 == (byte *)0x0;\n        if (bVar13) {\n          pbVar4 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar4;\n          pbVar10 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar11 = *pbVar9 < *pbVar10;\n            bVar13 = *pbVar9 == *pbVar10;\n            pbVar9 = pbVar9 + (uint)bVar14 * -2 + 1;\n            pbVar10 = pbVar10 + (uint)bVar14 * -2 + 1;\n          } while (bVar13);\n          if ((!bVar11 && !bVar13) == bVar11) {\n            return 1;\n          }\n        }\n        emit_note_gnu_build_id = (char *)xstrdup(pbVar4);\n        return 1;\n      }\n      if (optc != 0x199) {\n        return 0;\n      }\n      pcVar7 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar7,"none");\n      if (iVar8 == 0) {\n        link_info.compress_debug = COMPRESS_DEBUG_NONE;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar7,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar7,"zlib-gnu");\n        if (iVar8 == 0) {\n          link_info.compress_debug = COMPRESS_DEBUG_GNU_ZLIB;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar7,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar5 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      link_info.compress_debug = COMPRESS_DEBUG_GABI_ZLIB;\n      return 1;\n    }\n    if (optc == 0x14d) {\n      params.pic_fixup = -1;\n      return 1;\n    }\n    if (0x14d < optc) {\n      if (optc == 400) {\n        link_info._4_4_ = link_info._4_4_ & 0xfffffeff;\n        return 1;\n      }\n      if (optc < 0x191) {\n        if (optc == 0x14e) {\n          params.vle_reloc_fixup = 1;\n          return 1;\n        }\n        return 0;\n      }\n      link_info._4_4_ = link_info._4_4_ | 0x100;\n      return 1;\n    }\n    if (optc != 0x14b) {\n      if (optc == 0x14c) {\n        params.ppc476_workaround = 0;\n        return 1;\n      }\n      return 0;\n    }\n    params.ppc476_workaround = 1;\n    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      params.ppc476_workaround = 1;\n      return 1;\n    }\n    params.pagesize._0_4_ = strtoul(*(char **)PTR_optarg_001befe4,&end,0);\n    params.pagesize._4_4_ = 0;\n    if (((*end == '\0') &&\n        (iVar8 = ((ulong)params.pagesize != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < (ulong)params.pagesize - 1))) &&\n       (((ulong)params.pagesize - 1 & (ulong)params.pagesize) == 0)) {\n      params.pagesize._4_4_ = 0;\n      return 1;\n    }\n    pcVar7 = *(char **)puVar2;\n    pcVar5 = "%F%P: invalid pagesize `%s\'\n";\n  }\nLAB_0004f9a8:\n  pcVar5 = (char *)dcgettext(0,pcVar5,5);\n  einfo(pcVar5,pcVar7);\n  return 1;\n}" { (declaration "undefined4 uVar1;" type_identifier identifier ;) (declaration "undefined *puVar2;" type_identifier (pointer_declarator "*puVar2" * identifier) ;) (declaration "undefined1 uVar3;" type_identifier identifier ;) (declaration "byte *pbVar4;" type_identifier (pointer_declarator "*pbVar4" * identifier) ;) (declaration "char *pcVar5;" primitive_type (pointer_declarator "*pcVar5" * identifier) ;) (declaration "ulong uVar6;" type_identifier identifier ;) (declaration "char *pcVar7;" primitive_type (pointer_declarator "*pcVar7" * identifier) ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "byte *pbVar9;" type_identifier (pointer_declarator "*pbVar9" * identifier) ;) (declaration "byte *pbVar10;" type_identifier (pointer_declarator "*pbVar10" * identifier) ;) (declaration "bool bVar11;" primitive_type identifier ;) (declaration "bool bVar12;" primitive_type identifier ;) (declaration "bool bVar13;" primitive_type identifier ;) (declaration "byte bVar14;" type_identifier identifier ;) (declaration "char *end;" primitive_type (pointer_declarator "*end" * identifier) ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "puVar2 = PTR_optarg_001befe4;" (assignment_expression "puVar2 = PTR_optarg_001befe4" identifier = identifier) ;) (expression_statement "bVar14 = 0;" (assignment_expression "bVar14 = 0" identifier = number_literal) ;) (expression_statement "uStack_14 = 0x4f579;" (assignment_expression "uStack_14 = 0x4f579" identifier = number_literal) ;) (if_statement "if (optc == 0x14a) {\n    params.emit_stub_syms = 0;\n    return 1;\n  }" if (parenthesized_expression "(optc == 0x14a)" ( (binary_expression "optc == 0x14a" identifier == number_literal) )) (compound_statement "{\n    params.emit_stub_syms = 0;\n    return 1;\n  }" { (expression_statement "params.emit_stub_syms = 0;" (assignment_expression "params.emit_stub_syms = 0" (field_expression "params.emit_stub_syms" identifier . field_identifier) = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "uVar3 = link_info._4_1_;" (assignment_expression "uVar3 = link_info._4_1_" identifier = (field_expression "link_info._4_1_" identifier . field_identifier)) ;) (if_statement "if (optc < 0x14b) {\n    if (optc == 0x142) {\n      params.no_tls_get_addr_opt = 1;\n      return 1;\n    }\n    if (0x142 < optc) {\n      if (optc == 0x146) {\n        params.plt_stub_align = 0;\n        return 1;\n      }\n      if (0x146 < optc) {\n        if (optc == 0x148) {\n          old_got = 1;\n          return 1;\n        }\n        if (optc < 0x149) {\n          no_inline_opt = 1;\n          return 1;\n        }\n        params.emit_stub_syms = 1;\n        return 1;\n      }\n      if (optc == 0x144) {\n        params.plt_style = PLT_OLD;\n        return 1;\n      }\n      if (optc < 0x145) {\n        params.plt_style = PLT_NEW;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        params.plt_stub_align = 5;\n        return 1;\n      }\n      uVar6 = strtoul(*(char **)PTR_optarg_001befe4,&end,0);\n      if ((*end == '\0') && (uVar6 < 6)) {\n        params.plt_stub_align = uVar6;\n        return 1;\n      }\n      uVar1 = *(undefined4 *)puVar2;\n      pcVar7 = (char *)dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      einfo(pcVar7,uVar1);\n      params.plt_stub_align = uVar6;\n      return 1;\n    }\n    if (optc == 0xc2) {\n      notlsopt = 1;\n      params.no_tls_get_addr_opt = 1;\n      return 0;\n    }\n    if (0xc2 < optc) {\n      if (optc == 0x12e) {\n        link_info._4_4_ = link_info._4_4_ | 0x200;\n        return 1;\n      }\n      if (optc != 0x141) {\n        if (optc == 0x12d) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      notlsopt = 1;\n      return 1;\n    }\n    if (optc == 0x50) {\n      gldelf32lppcsim_append_to_separated_string(&depaudit,*(char **)PTR_optarg_001befe4);\n      return 1;\n    }\n    bVar11 = (uint)optc < 0x7a;\n    bVar13 = optc == 0x7a;\n    if (!bVar13) {\n      return 0;\n    }\n    iVar8 = 5;\n    pbVar4 = *(byte **)PTR_optarg_001befe4;\n    pbVar9 = pbVar4;\n    pbVar10 = (byte *)0x6ed7c;\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar11 = *pbVar9 < *pbVar10;\n      bVar13 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    } while (bVar13);\n    bVar12 = false;\n    bVar11 = (!bVar11 && !bVar13) == bVar11;\n    if (bVar11) {\n      link_info._2_2_ = link_info._2_2_ | 0x60;\n      return 1;\n    }\n    iVar8 = 7;\n    pbVar9 = pbVar4;\n    pbVar10 = (byte *)"undefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar10;\n      bVar11 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    } while (bVar11);\n    bVar13 = false;\n    bVar11 = (!bVar12 && !bVar11) == bVar12;\n    if (bVar11) {\n      link_info._2_2_ = link_info._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }\n    iVar8 = 8;\n    pbVar9 = pbVar4;\n    pbVar10 = (byte *)"muldefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar10;\n      bVar11 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    } while (bVar11);\n    bVar12 = false;\n    bVar11 = (!bVar13 && !bVar11) == bVar13;\n    if (bVar11) {\n      link_info._4_4_ = link_info._4_4_ | 0x800;\n      return 1;\n    }\n    iVar8 = 0xe;\n    pbVar9 = pbVar4;\n    pbVar10 = (byte *)"max-page-size=";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar10;\n      bVar11 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    } while (bVar11);\n    bVar13 = false;\n    bVar11 = (!bVar12 && !bVar11) == bVar12;\n    if (bVar11) {\n      config.maxpagesize._0_4_ = strtoul((char *)(pbVar4 + 0xe),&end,0);\n      config.maxpagesize._4_4_ = 0;\n      if ((*end == '\0') && (((ulong)config.maxpagesize & (ulong)config.maxpagesize - 1) == 0)) {\n        config.maxpagesize._4_4_ = 0;\n        return 1;\n      }\n      pcVar5 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar7 = (char *)(*(int *)puVar2 + 0xe);\n    }\n    else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar4;\n      pbVar10 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar13 = *pbVar9 < *pbVar10;\n        bVar11 = *pbVar9 == *pbVar10;\n        pbVar9 = pbVar9 + 1;\n        pbVar10 = pbVar10 + 1;\n      } while (bVar11);\n      bVar12 = false;\n      bVar11 = (!bVar13 && !bVar11) == bVar13;\n      if (!bVar11) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar4;\n        pbVar10 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        bVar13 = false;\n        bVar11 = (!bVar12 && !bVar11) == bVar12;\n        if (bVar11) {\n          link_info.stacksize._0_4_ = strtoul((char *)(pbVar4 + 0xb),&end,0);\n          link_info.stacksize._4_4_ = 0;\n          if (*end != '\0') {\n            iVar8 = *(int *)puVar2;\n            pcVar7 = (char *)dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar4 + 0xb);\n            einfo(pcVar7,iVar8 + 0xb);\n          }\n          if (link_info.stacksize._4_4_ != 0 || (ulong)link_info.stacksize != 0) {\n            return 1;\n          }\n          link_info.stacksize._0_4_ = 0xffffffff;\n          link_info.stacksize._4_4_ = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar4;\n        pbVar10 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        if ((!bVar13 && !bVar11) == bVar13) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"noexecstack");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"globalaudit");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"global");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"initfirst");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"interpose");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"loadfltr");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodefaultlib");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodelete");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodlopen");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodump");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"now");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags | 8;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"lazy");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags & 0xfffffff7;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"origin");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags | 1;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"combreloc");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocombreloc");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocopyreloc");\n        if (iVar8 == 0) {\n          link_info._0_1_ = link_info._0_1_ | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"relro");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"norelro");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"separate-code");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"noseparate-code");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"common");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocommon");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"text");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar4,"textoff"), iVar8 == 0)) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          link_info.dynamic_undefined_weak = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          link_info.dynamic_undefined_weak = 0;\n          return 1;\n        }\n        pcVar7 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        pcVar7 = (char *)dcgettext(0,pcVar7,5);\n        einfo(pcVar7,pbVar4);\n        return 1;\n      }\n      config.commonpagesize._0_4_ = strtoul((char *)(pbVar4 + 0x11),&end,0);\n      config.commonpagesize._4_4_ = 0;\n      if ((*end == '\0') && (((ulong)config.commonpagesize & (ulong)config.commonpagesize - 1) == 0)\n         ) {\n        config.commonpagesize._4_4_ = 0;\n        return 1;\n      }\n      pcVar5 = "%F%P: invalid common page size `%s\'\n";\n      pcVar7 = (char *)(*(int *)puVar2 + 0x11);\n    }\n  }\n  else {\n    if (optc == 0x192) {\n      link_info._2_2_ = link_info._2_2_ | 0x1e0;\n      link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 4;\n      return 1;\n    }\n    if (0x192 < optc) {\n      if (optc == 0x196) {\n        pbVar4 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar11 = false;\n        bVar13 = (link_info._4_4_ & 0xf3) == 0;\n        link_info._4_4_ = link_info._4_4_ & 0xfffffff3;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar11 = *pbVar9 < *pbVar10;\n          bVar13 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar13);\n        bVar12 = false;\n        bVar11 = (!bVar11 && !bVar13) == bVar11;\n        if (bVar11) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        bVar13 = false;\n        bVar11 = (!bVar12 && !bVar11) == bVar12;\n        if (bVar11) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        if ((!bVar13 && !bVar11) == bVar13) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar7 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if (optc < 0x197) {\n        if (optc == 0x194) {\n          link_info._2_2_ = link_info._2_2_ & 0x3fff;\n          return 1;\n        }\n        if (optc < 0x195) {\n          link_info._2_2_ = link_info._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        add_excluded_libs(*(char **)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (optc == 0x198) {\n        gldelf32lppcsim_append_to_separated_string(&audit,*(char **)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (optc < 0x198) {\n        if (emit_note_gnu_build_id != (char *)0x0) {\n          free(emit_note_gnu_build_id);\n          emit_note_gnu_build_id = (char *)0x0;\n        }\n        pbVar4 = *(byte **)PTR_optarg_001befe4;\n        bVar11 = false;\n        bVar13 = pbVar4 == (byte *)0x0;\n        if (bVar13) {\n          pbVar4 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar4;\n          pbVar10 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar11 = *pbVar9 < *pbVar10;\n            bVar13 = *pbVar9 == *pbVar10;\n            pbVar9 = pbVar9 + (uint)bVar14 * -2 + 1;\n            pbVar10 = pbVar10 + (uint)bVar14 * -2 + 1;\n          } while (bVar13);\n          if ((!bVar11 && !bVar13) == bVar11) {\n            return 1;\n          }\n        }\n        emit_note_gnu_build_id = (char *)xstrdup(pbVar4);\n        return 1;\n      }\n      if (optc != 0x199) {\n        return 0;\n      }\n      pcVar7 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar7,"none");\n      if (iVar8 == 0) {\n        link_info.compress_debug = COMPRESS_DEBUG_NONE;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar7,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar7,"zlib-gnu");\n        if (iVar8 == 0) {\n          link_info.compress_debug = COMPRESS_DEBUG_GNU_ZLIB;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar7,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar5 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      link_info.compress_debug = COMPRESS_DEBUG_GABI_ZLIB;\n      return 1;\n    }\n    if (optc == 0x14d) {\n      params.pic_fixup = -1;\n      return 1;\n    }\n    if (0x14d < optc) {\n      if (optc == 400) {\n        link_info._4_4_ = link_info._4_4_ & 0xfffffeff;\n        return 1;\n      }\n      if (optc < 0x191) {\n        if (optc == 0x14e) {\n          params.vle_reloc_fixup = 1;\n          return 1;\n        }\n        return 0;\n      }\n      link_info._4_4_ = link_info._4_4_ | 0x100;\n      return 1;\n    }\n    if (optc != 0x14b) {\n      if (optc == 0x14c) {\n        params.ppc476_workaround = 0;\n        return 1;\n      }\n      return 0;\n    }\n    params.ppc476_workaround = 1;\n    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      params.ppc476_workaround = 1;\n      return 1;\n    }\n    params.pagesize._0_4_ = strtoul(*(char **)PTR_optarg_001befe4,&end,0);\n    params.pagesize._4_4_ = 0;\n    if (((*end == '\0') &&\n        (iVar8 = ((ulong)params.pagesize != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < (ulong)params.pagesize - 1))) &&\n       (((ulong)params.pagesize - 1 & (ulong)params.pagesize) == 0)) {\n      params.pagesize._4_4_ = 0;\n      return 1;\n    }\n    pcVar7 = *(char **)puVar2;\n    pcVar5 = "%F%P: invalid pagesize `%s\'\n";\n  }" if (parenthesized_expression "(optc < 0x14b)" ( (binary_expression "optc < 0x14b" identifier < number_literal) )) (compound_statement "{\n    if (optc == 0x142) {\n      params.no_tls_get_addr_opt = 1;\n      return 1;\n    }\n    if (0x142 < optc) {\n      if (optc == 0x146) {\n        params.plt_stub_align = 0;\n        return 1;\n      }\n      if (0x146 < optc) {\n        if (optc == 0x148) {\n          old_got = 1;\n          return 1;\n        }\n        if (optc < 0x149) {\n          no_inline_opt = 1;\n          return 1;\n        }\n        params.emit_stub_syms = 1;\n        return 1;\n      }\n      if (optc == 0x144) {\n        params.plt_style = PLT_OLD;\n        return 1;\n      }\n      if (optc < 0x145) {\n        params.plt_style = PLT_NEW;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        params.plt_stub_align = 5;\n        return 1;\n      }\n      uVar6 = strtoul(*(char **)PTR_optarg_001befe4,&end,0);\n      if ((*end == '\0') && (uVar6 < 6)) {\n        params.plt_stub_align = uVar6;\n        return 1;\n      }\n      uVar1 = *(undefined4 *)puVar2;\n      pcVar7 = (char *)dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      einfo(pcVar7,uVar1);\n      params.plt_stub_align = uVar6;\n      return 1;\n    }\n    if (optc == 0xc2) {\n      notlsopt = 1;\n      params.no_tls_get_addr_opt = 1;\n      return 0;\n    }\n    if (0xc2 < optc) {\n      if (optc == 0x12e) {\n        link_info._4_4_ = link_info._4_4_ | 0x200;\n        return 1;\n      }\n      if (optc != 0x141) {\n        if (optc == 0x12d) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      notlsopt = 1;\n      return 1;\n    }\n    if (optc == 0x50) {\n      gldelf32lppcsim_append_to_separated_string(&depaudit,*(char **)PTR_optarg_001befe4);\n      return 1;\n    }\n    bVar11 = (uint)optc < 0x7a;\n    bVar13 = optc == 0x7a;\n    if (!bVar13) {\n      return 0;\n    }\n    iVar8 = 5;\n    pbVar4 = *(byte **)PTR_optarg_001befe4;\n    pbVar9 = pbVar4;\n    pbVar10 = (byte *)0x6ed7c;\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar11 = *pbVar9 < *pbVar10;\n      bVar13 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    } while (bVar13);\n    bVar12 = false;\n    bVar11 = (!bVar11 && !bVar13) == bVar11;\n    if (bVar11) {\n      link_info._2_2_ = link_info._2_2_ | 0x60;\n      return 1;\n    }\n    iVar8 = 7;\n    pbVar9 = pbVar4;\n    pbVar10 = (byte *)"undefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar10;\n      bVar11 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    } while (bVar11);\n    bVar13 = false;\n    bVar11 = (!bVar12 && !bVar11) == bVar12;\n    if (bVar11) {\n      link_info._2_2_ = link_info._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }\n    iVar8 = 8;\n    pbVar9 = pbVar4;\n    pbVar10 = (byte *)"muldefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar10;\n      bVar11 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    } while (bVar11);\n    bVar12 = false;\n    bVar11 = (!bVar13 && !bVar11) == bVar13;\n    if (bVar11) {\n      link_info._4_4_ = link_info._4_4_ | 0x800;\n      return 1;\n    }\n    iVar8 = 0xe;\n    pbVar9 = pbVar4;\n    pbVar10 = (byte *)"max-page-size=";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar10;\n      bVar11 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    } while (bVar11);\n    bVar13 = false;\n    bVar11 = (!bVar12 && !bVar11) == bVar12;\n    if (bVar11) {\n      config.maxpagesize._0_4_ = strtoul((char *)(pbVar4 + 0xe),&end,0);\n      config.maxpagesize._4_4_ = 0;\n      if ((*end == '\0') && (((ulong)config.maxpagesize & (ulong)config.maxpagesize - 1) == 0)) {\n        config.maxpagesize._4_4_ = 0;\n        return 1;\n      }\n      pcVar5 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar7 = (char *)(*(int *)puVar2 + 0xe);\n    }\n    else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar4;\n      pbVar10 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar13 = *pbVar9 < *pbVar10;\n        bVar11 = *pbVar9 == *pbVar10;\n        pbVar9 = pbVar9 + 1;\n        pbVar10 = pbVar10 + 1;\n      } while (bVar11);\n      bVar12 = false;\n      bVar11 = (!bVar13 && !bVar11) == bVar13;\n      if (!bVar11) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar4;\n        pbVar10 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        bVar13 = false;\n        bVar11 = (!bVar12 && !bVar11) == bVar12;\n        if (bVar11) {\n          link_info.stacksize._0_4_ = strtoul((char *)(pbVar4 + 0xb),&end,0);\n          link_info.stacksize._4_4_ = 0;\n          if (*end != '\0') {\n            iVar8 = *(int *)puVar2;\n            pcVar7 = (char *)dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar4 + 0xb);\n            einfo(pcVar7,iVar8 + 0xb);\n          }\n          if (link_info.stacksize._4_4_ != 0 || (ulong)link_info.stacksize != 0) {\n            return 1;\n          }\n          link_info.stacksize._0_4_ = 0xffffffff;\n          link_info.stacksize._4_4_ = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar4;\n        pbVar10 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        if ((!bVar13 && !bVar11) == bVar13) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"noexecstack");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"globalaudit");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"global");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"initfirst");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"interpose");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"loadfltr");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodefaultlib");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodelete");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodlopen");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodump");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"now");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags | 8;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"lazy");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags & 0xfffffff7;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"origin");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags | 1;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"combreloc");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocombreloc");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocopyreloc");\n        if (iVar8 == 0) {\n          link_info._0_1_ = link_info._0_1_ | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"relro");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"norelro");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"separate-code");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"noseparate-code");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"common");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocommon");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"text");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar4,"textoff"), iVar8 == 0)) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          link_info.dynamic_undefined_weak = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          link_info.dynamic_undefined_weak = 0;\n          return 1;\n        }\n        pcVar7 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        pcVar7 = (char *)dcgettext(0,pcVar7,5);\n        einfo(pcVar7,pbVar4);\n        return 1;\n      }\n      config.commonpagesize._0_4_ = strtoul((char *)(pbVar4 + 0x11),&end,0);\n      config.commonpagesize._4_4_ = 0;\n      if ((*end == '\0') && (((ulong)config.commonpagesize & (ulong)config.commonpagesize - 1) == 0)\n         ) {\n        config.commonpagesize._4_4_ = 0;\n        return 1;\n      }\n      pcVar5 = "%F%P: invalid common page size `%s\'\n";\n      pcVar7 = (char *)(*(int *)puVar2 + 0x11);\n    }\n  }" { (if_statement "if (optc == 0x142) {\n      params.no_tls_get_addr_opt = 1;\n      return 1;\n    }" if (parenthesized_expression "(optc == 0x142)" ( (binary_expression "optc == 0x142" identifier == number_literal) )) (compound_statement "{\n      params.no_tls_get_addr_opt = 1;\n      return 1;\n    }" { (expression_statement "params.no_tls_get_addr_opt = 1;" (assignment_expression "params.no_tls_get_addr_opt = 1" (field_expression "params.no_tls_get_addr_opt" identifier . field_identifier) = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (0x142 < optc) {\n      if (optc == 0x146) {\n        params.plt_stub_align = 0;\n        return 1;\n      }\n      if (0x146 < optc) {\n        if (optc == 0x148) {\n          old_got = 1;\n          return 1;\n        }\n        if (optc < 0x149) {\n          no_inline_opt = 1;\n          return 1;\n        }\n        params.emit_stub_syms = 1;\n        return 1;\n      }\n      if (optc == 0x144) {\n        params.plt_style = PLT_OLD;\n        return 1;\n      }\n      if (optc < 0x145) {\n        params.plt_style = PLT_NEW;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        params.plt_stub_align = 5;\n        return 1;\n      }\n      uVar6 = strtoul(*(char **)PTR_optarg_001befe4,&end,0);\n      if ((*end == '\0') && (uVar6 < 6)) {\n        params.plt_stub_align = uVar6;\n        return 1;\n      }\n      uVar1 = *(undefined4 *)puVar2;\n      pcVar7 = (char *)dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      einfo(pcVar7,uVar1);\n      params.plt_stub_align = uVar6;\n      return 1;\n    }" if (parenthesized_expression "(0x142 < optc)" ( (binary_expression "0x142 < optc" number_literal < identifier) )) (compound_statement "{\n      if (optc == 0x146) {\n        params.plt_stub_align = 0;\n        return 1;\n      }\n      if (0x146 < optc) {\n        if (optc == 0x148) {\n          old_got = 1;\n          return 1;\n        }\n        if (optc < 0x149) {\n          no_inline_opt = 1;\n          return 1;\n        }\n        params.emit_stub_syms = 1;\n        return 1;\n      }\n      if (optc == 0x144) {\n        params.plt_style = PLT_OLD;\n        return 1;\n      }\n      if (optc < 0x145) {\n        params.plt_style = PLT_NEW;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        params.plt_stub_align = 5;\n        return 1;\n      }\n      uVar6 = strtoul(*(char **)PTR_optarg_001befe4,&end,0);\n      if ((*end == '\0') && (uVar6 < 6)) {\n        params.plt_stub_align = uVar6;\n        return 1;\n      }\n      uVar1 = *(undefined4 *)puVar2;\n      pcVar7 = (char *)dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      einfo(pcVar7,uVar1);\n      params.plt_stub_align = uVar6;\n      return 1;\n    }" { (if_statement "if (optc == 0x146) {\n        params.plt_stub_align = 0;\n        return 1;\n      }" if (parenthesized_expression "(optc == 0x146)" ( (binary_expression "optc == 0x146" identifier == number_literal) )) (compound_statement "{\n        params.plt_stub_align = 0;\n        return 1;\n      }" { (expression_statement "params.plt_stub_align = 0;" (assignment_expression "params.plt_stub_align = 0" (field_expression "params.plt_stub_align" identifier . field_identifier) = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (0x146 < optc) {\n        if (optc == 0x148) {\n          old_got = 1;\n          return 1;\n        }\n        if (optc < 0x149) {\n          no_inline_opt = 1;\n          return 1;\n        }\n        params.emit_stub_syms = 1;\n        return 1;\n      }" if (parenthesized_expression "(0x146 < optc)" ( (binary_expression "0x146 < optc" number_literal < identifier) )) (compound_statement "{\n        if (optc == 0x148) {\n          old_got = 1;\n          return 1;\n        }\n        if (optc < 0x149) {\n          no_inline_opt = 1;\n          return 1;\n        }\n        params.emit_stub_syms = 1;\n        return 1;\n      }" { (if_statement "if (optc == 0x148) {\n          old_got = 1;\n          return 1;\n        }" if (parenthesized_expression "(optc == 0x148)" ( (binary_expression "optc == 0x148" identifier == number_literal) )) (compound_statement "{\n          old_got = 1;\n          return 1;\n        }" { (expression_statement "old_got = 1;" (assignment_expression "old_got = 1" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (optc < 0x149) {\n          no_inline_opt = 1;\n          return 1;\n        }" if (parenthesized_expression "(optc < 0x149)" ( (binary_expression "optc < 0x149" identifier < number_literal) )) (compound_statement "{\n          no_inline_opt = 1;\n          return 1;\n        }" { (expression_statement "no_inline_opt = 1;" (assignment_expression "no_inline_opt = 1" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "params.emit_stub_syms = 1;" (assignment_expression "params.emit_stub_syms = 1" (field_expression "params.emit_stub_syms" identifier . field_identifier) = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (optc == 0x144) {\n        params.plt_style = PLT_OLD;\n        return 1;\n      }" if (parenthesized_expression "(optc == 0x144)" ( (binary_expression "optc == 0x144" identifier == number_literal) )) (compound_statement "{\n        params.plt_style = PLT_OLD;\n        return 1;\n      }" { (expression_statement "params.plt_style = PLT_OLD;" (assignment_expression "params.plt_style = PLT_OLD" (field_expression "params.plt_style" identifier . field_identifier) = identifier) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (optc < 0x145) {\n        params.plt_style = PLT_NEW;\n        return 1;\n      }" if (parenthesized_expression "(optc < 0x145)" ( (binary_expression "optc < 0x145" identifier < number_literal) )) (compound_statement "{\n        params.plt_style = PLT_NEW;\n        return 1;\n      }" { (expression_statement "params.plt_style = PLT_NEW;" (assignment_expression "params.plt_style = PLT_NEW" (field_expression "params.plt_style" identifier . field_identifier) = identifier) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        params.plt_stub_align = 5;\n        return 1;\n      }" if (parenthesized_expression "(*(char **)PTR_optarg_001befe4 == (char *)0x0)" ( (binary_expression "*(char **)PTR_optarg_001befe4 == (char *)0x0" (pointer_expression "*(char **)PTR_optarg_001befe4" * (cast_expression "(char **)PTR_optarg_001befe4" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        params.plt_stub_align = 5;\n        return 1;\n      }" { (expression_statement "params.plt_stub_align = 5;" (assignment_expression "params.plt_stub_align = 5" (field_expression "params.plt_stub_align" identifier . field_identifier) = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "uVar6 = strtoul(*(char **)PTR_optarg_001befe4,&end,0);" (assignment_expression "uVar6 = strtoul(*(char **)PTR_optarg_001befe4,&end,0)" identifier = (call_expression "strtoul(*(char **)PTR_optarg_001befe4,&end,0)" identifier (argument_list "(*(char **)PTR_optarg_001befe4,&end,0)" ( (pointer_expression "*(char **)PTR_optarg_001befe4" * (cast_expression "(char **)PTR_optarg_001befe4" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) , (pointer_expression "&end" & identifier) , number_literal )))) ;) (if_statement "if ((*end == '\0') && (uVar6 < 6)) {\n        params.plt_stub_align = uVar6;\n        return 1;\n      }" if (parenthesized_expression "((*end == '\0') && (uVar6 < 6))" ( (binary_expression "(*end == '\0') && (uVar6 < 6)" (parenthesized_expression "(*end == '\0')" ( (binary_expression "*end == '\0'" (pointer_expression "*end" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(uVar6 < 6)" ( (binary_expression "uVar6 < 6" identifier < number_literal) ))) )) (compound_statement "{\n        params.plt_stub_align = uVar6;\n        return 1;\n      }" { (expression_statement "params.plt_stub_align = uVar6;" (assignment_expression "params.plt_stub_align = uVar6" (field_expression "params.plt_stub_align" identifier . field_identifier) = identifier) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "uVar1 = *(undefined4 *)puVar2;" (assignment_expression "uVar1 = *(undefined4 *)puVar2" identifier = (pointer_expression "*(undefined4 *)puVar2" * (cast_expression "(undefined4 *)puVar2" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "pcVar7 = (char *)dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5)" identifier (argument_list "(0,"%F%P: invalid --plt-align `%s\'\n",5)" ( number_literal , (string_literal ""%F%P: invalid --plt-align `%s\'\n"" " string_content escape_sequence escape_sequence ") , number_literal ))))) ;) (expression_statement "einfo(pcVar7,uVar1);" (call_expression "einfo(pcVar7,uVar1)" identifier (argument_list "(pcVar7,uVar1)" ( identifier , identifier ))) ;) (expression_statement "params.plt_stub_align = uVar6;" (assignment_expression "params.plt_stub_align = uVar6" (field_expression "params.plt_stub_align" identifier . field_identifier) = identifier) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (optc == 0xc2) {\n      notlsopt = 1;\n      params.no_tls_get_addr_opt = 1;\n      return 0;\n    }" if (parenthesized_expression "(optc == 0xc2)" ( (binary_expression "optc == 0xc2" identifier == number_literal) )) (compound_statement "{\n      notlsopt = 1;\n      params.no_tls_get_addr_opt = 1;\n      return 0;\n    }" { (expression_statement "notlsopt = 1;" (assignment_expression "notlsopt = 1" identifier = number_literal) ;) (expression_statement "params.no_tls_get_addr_opt = 1;" (assignment_expression "params.no_tls_get_addr_opt = 1" (field_expression "params.no_tls_get_addr_opt" identifier . field_identifier) = number_literal) ;) (return_statement "return 0;" return number_literal ;) })) (if_statement "if (0xc2 < optc) {\n      if (optc == 0x12e) {\n        link_info._4_4_ = link_info._4_4_ | 0x200;\n        return 1;\n      }\n      if (optc != 0x141) {\n        if (optc == 0x12d) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      notlsopt = 1;\n      return 1;\n    }" if (parenthesized_expression "(0xc2 < optc)" ( (binary_expression "0xc2 < optc" number_literal < identifier) )) (compound_statement "{\n      if (optc == 0x12e) {\n        link_info._4_4_ = link_info._4_4_ | 0x200;\n        return 1;\n      }\n      if (optc != 0x141) {\n        if (optc == 0x12d) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      notlsopt = 1;\n      return 1;\n    }" { (if_statement "if (optc == 0x12e) {\n        link_info._4_4_ = link_info._4_4_ | 0x200;\n        return 1;\n      }" if (parenthesized_expression "(optc == 0x12e)" ( (binary_expression "optc == 0x12e" identifier == number_literal) )) (compound_statement "{\n        link_info._4_4_ = link_info._4_4_ | 0x200;\n        return 1;\n      }" { (expression_statement "link_info._4_4_ = link_info._4_4_ | 0x200;" (assignment_expression "link_info._4_4_ = link_info._4_4_ | 0x200" (field_expression "link_info._4_4_" identifier . field_identifier) = (binary_expression "link_info._4_4_ | 0x200" (field_expression "link_info._4_4_" identifier . field_identifier) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (optc != 0x141) {\n        if (optc == 0x12d) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }" if (parenthesized_expression "(optc != 0x141)" ( (binary_expression "optc != 0x141" identifier != number_literal) )) (compound_statement "{\n        if (optc == 0x12d) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }" { (if_statement "if (optc == 0x12d) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffffdff;\n          return 1;\n        }" if (parenthesized_expression "(optc == 0x12d)" ( (binary_expression "optc == 0x12d" identifier == number_literal) )) (compound_statement "{\n          link_info._4_4_ = link_info._4_4_ & 0xfffffdff;\n          return 1;\n        }" { (expression_statement "link_info._4_4_ = link_info._4_4_ & 0xfffffdff;" (assignment_expression "link_info._4_4_ = link_info._4_4_ & 0xfffffdff" (field_expression "link_info._4_4_" identifier . field_identifier) = (binary_expression "link_info._4_4_ & 0xfffffdff" (field_expression "link_info._4_4_" identifier . field_identifier) & number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (return_statement "return 0;" return number_literal ;) })) (expression_statement "notlsopt = 1;" (assignment_expression "notlsopt = 1" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (optc == 0x50) {\n      gldelf32lppcsim_append_to_separated_string(&depaudit,*(char **)PTR_optarg_001befe4);\n      return 1;\n    }" if (parenthesized_expression "(optc == 0x50)" ( (binary_expression "optc == 0x50" identifier == number_literal) )) (compound_statement "{\n      gldelf32lppcsim_append_to_separated_string(&depaudit,*(char **)PTR_optarg_001befe4);\n      return 1;\n    }" { (expression_statement "gldelf32lppcsim_append_to_separated_string(&depaudit,*(char **)PTR_optarg_001befe4);" (call_expression "gldelf32lppcsim_append_to_separated_string(&depaudit,*(char **)PTR_optarg_001befe4)" identifier (argument_list "(&depaudit,*(char **)PTR_optarg_001befe4)" ( (pointer_expression "&depaudit" & identifier) , (pointer_expression "*(char **)PTR_optarg_001befe4" * (cast_expression "(char **)PTR_optarg_001befe4" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "bVar11 = (uint)optc < 0x7a;" (assignment_expression "bVar11 = (uint)optc < 0x7a" identifier = (binary_expression "(uint)optc < 0x7a" (cast_expression "(uint)optc" ( (type_descriptor "uint" type_identifier) ) identifier) < number_literal)) ;) (expression_statement "bVar13 = optc == 0x7a;" (assignment_expression "bVar13 = optc == 0x7a" identifier = (binary_expression "optc == 0x7a" identifier == number_literal)) ;) (if_statement "if (!bVar13) {\n      return 0;\n    }" if (parenthesized_expression "(!bVar13)" ( (unary_expression "!bVar13" ! identifier) )) (compound_statement "{\n      return 0;\n    }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "iVar8 = 5;" (assignment_expression "iVar8 = 5" identifier = number_literal) ;) (expression_statement "pbVar4 = *(byte **)PTR_optarg_001befe4;" (assignment_expression "pbVar4 = *(byte **)PTR_optarg_001befe4" identifier = (pointer_expression "*(byte **)PTR_optarg_001befe4" * (cast_expression "(byte **)PTR_optarg_001befe4" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "pbVar9 = pbVar4;" (assignment_expression "pbVar9 = pbVar4" identifier = identifier) ;) (expression_statement "pbVar10 = (byte *)0x6ed7c;" (assignment_expression "pbVar10 = (byte *)0x6ed7c" identifier = (cast_expression "(byte *)0x6ed7c" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar11 = *pbVar9 < *pbVar10;\n      bVar13 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    } while (bVar13);" do (compound_statement "{\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar11 = *pbVar9 < *pbVar10;\n      bVar13 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar11 = *pbVar9 < *pbVar10;" (assignment_expression "bVar11 = *pbVar9 < *pbVar10" identifier = (binary_expression "*pbVar9 < *pbVar10" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar10" * identifier))) ;) (expression_statement "bVar13 = *pbVar9 == *pbVar10;" (assignment_expression "bVar13 = *pbVar9 == *pbVar10" identifier = (binary_expression "*pbVar9 == *pbVar10" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar10" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar10 = pbVar10 + 1;" (assignment_expression "pbVar10 = pbVar10 + 1" identifier = (binary_expression "pbVar10 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar13)" ( identifier )) ;) (expression_statement "bVar12 = false;" (assignment_expression "bVar12 = false" identifier = false) ;) (expression_statement "bVar11 = (!bVar11 && !bVar13) == bVar11;" (assignment_expression "bVar11 = (!bVar11 && !bVar13) == bVar11" identifier = (binary_expression "(!bVar11 && !bVar13) == bVar11" (parenthesized_expression "(!bVar11 && !bVar13)" ( (binary_expression "!bVar11 && !bVar13" (unary_expression "!bVar11" ! identifier) && (unary_expression "!bVar13" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar11) {\n      link_info._2_2_ = link_info._2_2_ | 0x60;\n      return 1;\n    }" if (parenthesized_expression "(bVar11)" ( identifier )) (compound_statement "{\n      link_info._2_2_ = link_info._2_2_ | 0x60;\n      return 1;\n    }" { (expression_statement "link_info._2_2_ = link_info._2_2_ | 0x60;" (assignment_expression "link_info._2_2_ = link_info._2_2_ | 0x60" (field_expression "link_info._2_2_" identifier . field_identifier) = (binary_expression "link_info._2_2_ | 0x60" (field_expression "link_info._2_2_" identifier . field_identifier) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = 7;" (assignment_expression "iVar8 = 7" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar4;" (assignment_expression "pbVar9 = pbVar4" identifier = identifier) ;) (expression_statement "pbVar10 = (byte *)"undefs";" (assignment_expression "pbVar10 = (byte *)"undefs"" identifier = (cast_expression "(byte *)"undefs"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal ""undefs"" " string_content "))) ;) (do_statement "do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar10;\n      bVar11 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    } while (bVar11);" do (compound_statement "{\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar10;\n      bVar11 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar12 = *pbVar9 < *pbVar10;" (assignment_expression "bVar12 = *pbVar9 < *pbVar10" identifier = (binary_expression "*pbVar9 < *pbVar10" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar10" * identifier))) ;) (expression_statement "bVar11 = *pbVar9 == *pbVar10;" (assignment_expression "bVar11 = *pbVar9 == *pbVar10" identifier = (binary_expression "*pbVar9 == *pbVar10" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar10" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar10 = pbVar10 + 1;" (assignment_expression "pbVar10 = pbVar10 + 1" identifier = (binary_expression "pbVar10 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar11)" ( identifier )) ;) (expression_statement "bVar13 = false;" (assignment_expression "bVar13 = false" identifier = false) ;) (expression_statement "bVar11 = (!bVar12 && !bVar11) == bVar12;" (assignment_expression "bVar11 = (!bVar12 && !bVar11) == bVar12" identifier = (binary_expression "(!bVar12 && !bVar11) == bVar12" (parenthesized_expression "(!bVar12 && !bVar11)" ( (binary_expression "!bVar12 && !bVar11" (unary_expression "!bVar12" ! identifier) && (unary_expression "!bVar11" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar11) {\n      link_info._2_2_ = link_info._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }" if (parenthesized_expression "(bVar11)" ( identifier )) (compound_statement "{\n      link_info._2_2_ = link_info._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }" { (expression_statement "link_info._2_2_ = link_info._2_2_ & 0xff9f | 0x20;" (assignment_expression "link_info._2_2_ = link_info._2_2_ & 0xff9f | 0x20" (field_expression "link_info._2_2_" identifier . field_identifier) = (binary_expression "link_info._2_2_ & 0xff9f | 0x20" (binary_expression "link_info._2_2_ & 0xff9f" (field_expression "link_info._2_2_" identifier . field_identifier) & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = 8;" (assignment_expression "iVar8 = 8" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar4;" (assignment_expression "pbVar9 = pbVar4" identifier = identifier) ;) (expression_statement "pbVar10 = (byte *)"muldefs";" (assignment_expression "pbVar10 = (byte *)"muldefs"" identifier = (cast_expression "(byte *)"muldefs"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal ""muldefs"" " string_content "))) ;) (do_statement "do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar10;\n      bVar11 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    } while (bVar11);" do (compound_statement "{\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar10;\n      bVar11 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar13 = *pbVar9 < *pbVar10;" (assignment_expression "bVar13 = *pbVar9 < *pbVar10" identifier = (binary_expression "*pbVar9 < *pbVar10" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar10" * identifier))) ;) (expression_statement "bVar11 = *pbVar9 == *pbVar10;" (assignment_expression "bVar11 = *pbVar9 == *pbVar10" identifier = (binary_expression "*pbVar9 == *pbVar10" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar10" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar10 = pbVar10 + 1;" (assignment_expression "pbVar10 = pbVar10 + 1" identifier = (binary_expression "pbVar10 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar11)" ( identifier )) ;) (expression_statement "bVar12 = false;" (assignment_expression "bVar12 = false" identifier = false) ;) (expression_statement "bVar11 = (!bVar13 && !bVar11) == bVar13;" (assignment_expression "bVar11 = (!bVar13 && !bVar11) == bVar13" identifier = (binary_expression "(!bVar13 && !bVar11) == bVar13" (parenthesized_expression "(!bVar13 && !bVar11)" ( (binary_expression "!bVar13 && !bVar11" (unary_expression "!bVar13" ! identifier) && (unary_expression "!bVar11" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar11) {\n      link_info._4_4_ = link_info._4_4_ | 0x800;\n      return 1;\n    }" if (parenthesized_expression "(bVar11)" ( identifier )) (compound_statement "{\n      link_info._4_4_ = link_info._4_4_ | 0x800;\n      return 1;\n    }" { (expression_statement "link_info._4_4_ = link_info._4_4_ | 0x800;" (assignment_expression "link_info._4_4_ = link_info._4_4_ | 0x800" (field_expression "link_info._4_4_" identifier . field_identifier) = (binary_expression "link_info._4_4_ | 0x800" (field_expression "link_info._4_4_" identifier . field_identifier) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = 0xe;" (assignment_expression "iVar8 = 0xe" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar4;" (assignment_expression "pbVar9 = pbVar4" identifier = identifier) ;) (expression_statement "pbVar10 = (byte *)"max-page-size=";" (assignment_expression "pbVar10 = (byte *)"max-page-size="" identifier = (cast_expression "(byte *)"max-page-size="" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal ""max-page-size="" " string_content "))) ;) (do_statement "do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar10;\n      bVar11 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    } while (bVar11);" do (compound_statement "{\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar10;\n      bVar11 = *pbVar9 == *pbVar10;\n      pbVar9 = pbVar9 + 1;\n      pbVar10 = pbVar10 + 1;\n    }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar12 = *pbVar9 < *pbVar10;" (assignment_expression "bVar12 = *pbVar9 < *pbVar10" identifier = (binary_expression "*pbVar9 < *pbVar10" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar10" * identifier))) ;) (expression_statement "bVar11 = *pbVar9 == *pbVar10;" (assignment_expression "bVar11 = *pbVar9 == *pbVar10" identifier = (binary_expression "*pbVar9 == *pbVar10" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar10" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar10 = pbVar10 + 1;" (assignment_expression "pbVar10 = pbVar10 + 1" identifier = (binary_expression "pbVar10 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar11)" ( identifier )) ;) (expression_statement "bVar13 = false;" (assignment_expression "bVar13 = false" identifier = false) ;) (expression_statement "bVar11 = (!bVar12 && !bVar11) == bVar12;" (assignment_expression "bVar11 = (!bVar12 && !bVar11) == bVar12" identifier = (binary_expression "(!bVar12 && !bVar11) == bVar12" (parenthesized_expression "(!bVar12 && !bVar11)" ( (binary_expression "!bVar12 && !bVar11" (unary_expression "!bVar12" ! identifier) && (unary_expression "!bVar11" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar11) {\n      config.maxpagesize._0_4_ = strtoul((char *)(pbVar4 + 0xe),&end,0);\n      config.maxpagesize._4_4_ = 0;\n      if ((*end == '\0') && (((ulong)config.maxpagesize & (ulong)config.maxpagesize - 1) == 0)) {\n        config.maxpagesize._4_4_ = 0;\n        return 1;\n      }\n      pcVar5 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar7 = (char *)(*(int *)puVar2 + 0xe);\n    }\n    else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar4;\n      pbVar10 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar13 = *pbVar9 < *pbVar10;\n        bVar11 = *pbVar9 == *pbVar10;\n        pbVar9 = pbVar9 + 1;\n        pbVar10 = pbVar10 + 1;\n      } while (bVar11);\n      bVar12 = false;\n      bVar11 = (!bVar13 && !bVar11) == bVar13;\n      if (!bVar11) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar4;\n        pbVar10 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        bVar13 = false;\n        bVar11 = (!bVar12 && !bVar11) == bVar12;\n        if (bVar11) {\n          link_info.stacksize._0_4_ = strtoul((char *)(pbVar4 + 0xb),&end,0);\n          link_info.stacksize._4_4_ = 0;\n          if (*end != '\0') {\n            iVar8 = *(int *)puVar2;\n            pcVar7 = (char *)dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar4 + 0xb);\n            einfo(pcVar7,iVar8 + 0xb);\n          }\n          if (link_info.stacksize._4_4_ != 0 || (ulong)link_info.stacksize != 0) {\n            return 1;\n          }\n          link_info.stacksize._0_4_ = 0xffffffff;\n          link_info.stacksize._4_4_ = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar4;\n        pbVar10 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        if ((!bVar13 && !bVar11) == bVar13) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"noexecstack");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"globalaudit");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"global");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"initfirst");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"interpose");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"loadfltr");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodefaultlib");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodelete");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodlopen");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodump");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"now");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags | 8;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"lazy");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags & 0xfffffff7;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"origin");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags | 1;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"combreloc");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocombreloc");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocopyreloc");\n        if (iVar8 == 0) {\n          link_info._0_1_ = link_info._0_1_ | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"relro");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"norelro");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"separate-code");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"noseparate-code");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"common");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocommon");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"text");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar4,"textoff"), iVar8 == 0)) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          link_info.dynamic_undefined_weak = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          link_info.dynamic_undefined_weak = 0;\n          return 1;\n        }\n        pcVar7 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        pcVar7 = (char *)dcgettext(0,pcVar7,5);\n        einfo(pcVar7,pbVar4);\n        return 1;\n      }\n      config.commonpagesize._0_4_ = strtoul((char *)(pbVar4 + 0x11),&end,0);\n      config.commonpagesize._4_4_ = 0;\n      if ((*end == '\0') && (((ulong)config.commonpagesize & (ulong)config.commonpagesize - 1) == 0)\n         ) {\n        config.commonpagesize._4_4_ = 0;\n        return 1;\n      }\n      pcVar5 = "%F%P: invalid common page size `%s\'\n";\n      pcVar7 = (char *)(*(int *)puVar2 + 0x11);\n    }" if (parenthesized_expression "(bVar11)" ( identifier )) (compound_statement "{\n      config.maxpagesize._0_4_ = strtoul((char *)(pbVar4 + 0xe),&end,0);\n      config.maxpagesize._4_4_ = 0;\n      if ((*end == '\0') && (((ulong)config.maxpagesize & (ulong)config.maxpagesize - 1) == 0)) {\n        config.maxpagesize._4_4_ = 0;\n        return 1;\n      }\n      pcVar5 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar7 = (char *)(*(int *)puVar2 + 0xe);\n    }" { (expression_statement "config.maxpagesize._0_4_ = strtoul((char *)(pbVar4 + 0xe),&end,0);" (assignment_expression "config.maxpagesize._0_4_ = strtoul((char *)(pbVar4 + 0xe),&end,0)" (field_expression "config.maxpagesize._0_4_" (field_expression "config.maxpagesize" identifier . field_identifier) . field_identifier) = (call_expression "strtoul((char *)(pbVar4 + 0xe),&end,0)" identifier (argument_list "((char *)(pbVar4 + 0xe),&end,0)" ( (cast_expression "(char *)(pbVar4 + 0xe)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar4 + 0xe)" ( (binary_expression "pbVar4 + 0xe" identifier + number_literal) ))) , (pointer_expression "&end" & identifier) , number_literal )))) ;) (expression_statement "config.maxpagesize._4_4_ = 0;" (assignment_expression "config.maxpagesize._4_4_ = 0" (field_expression "config.maxpagesize._4_4_" (field_expression "config.maxpagesize" identifier . field_identifier) . field_identifier) = number_literal) ;) (if_statement "if ((*end == '\0') && (((ulong)config.maxpagesize & (ulong)config.maxpagesize - 1) == 0)) {\n        config.maxpagesize._4_4_ = 0;\n        return 1;\n      }" if (parenthesized_expression "((*end == '\0') && (((ulong)config.maxpagesize & (ulong)config.maxpagesize - 1) == 0))" ( (binary_expression "(*end == '\0') && (((ulong)config.maxpagesize & (ulong)config.maxpagesize - 1) == 0)" (parenthesized_expression "(*end == '\0')" ( (binary_expression "*end == '\0'" (pointer_expression "*end" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(((ulong)config.maxpagesize & (ulong)config.maxpagesize - 1) == 0)" ( (binary_expression "((ulong)config.maxpagesize & (ulong)config.maxpagesize - 1) == 0" (parenthesized_expression "((ulong)config.maxpagesize & (ulong)config.maxpagesize - 1)" ( (binary_expression "(ulong)config.maxpagesize & (ulong)config.maxpagesize - 1" (cast_expression "(ulong)config.maxpagesize" ( (type_descriptor "ulong" type_identifier) ) (field_expression "config.maxpagesize" identifier . field_identifier)) & (binary_expression "(ulong)config.maxpagesize - 1" (cast_expression "(ulong)config.maxpagesize" ( (type_descriptor "ulong" type_identifier) ) (field_expression "config.maxpagesize" identifier . field_identifier)) - number_literal)) )) == number_literal) ))) )) (compound_statement "{\n        config.maxpagesize._4_4_ = 0;\n        return 1;\n      }" { (expression_statement "config.maxpagesize._4_4_ = 0;" (assignment_expression "config.maxpagesize._4_4_ = 0" (field_expression "config.maxpagesize._4_4_" (field_expression "config.maxpagesize" identifier . field_identifier) . field_identifier) = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "pcVar5 = "%F%P: invalid maximum page size `%s\'\n";" (assignment_expression "pcVar5 = "%F%P: invalid maximum page size `%s\'\n"" identifier = (string_literal ""%F%P: invalid maximum page size `%s\'\n"" " string_content escape_sequence escape_sequence ")) ;) (expression_statement "pcVar7 = (char *)(*(int *)puVar2 + 0xe);" (assignment_expression "pcVar7 = (char *)(*(int *)puVar2 + 0xe)" identifier = (cast_expression "(char *)(*(int *)puVar2 + 0xe)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)puVar2 + 0xe)" ( (binary_expression "*(int *)puVar2 + 0xe" (pointer_expression "*(int *)puVar2" * (cast_expression "(int *)puVar2" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) ;) }) (else_clause "else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar4;\n      pbVar10 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar13 = *pbVar9 < *pbVar10;\n        bVar11 = *pbVar9 == *pbVar10;\n        pbVar9 = pbVar9 + 1;\n        pbVar10 = pbVar10 + 1;\n      } while (bVar11);\n      bVar12 = false;\n      bVar11 = (!bVar13 && !bVar11) == bVar13;\n      if (!bVar11) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar4;\n        pbVar10 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        bVar13 = false;\n        bVar11 = (!bVar12 && !bVar11) == bVar12;\n        if (bVar11) {\n          link_info.stacksize._0_4_ = strtoul((char *)(pbVar4 + 0xb),&end,0);\n          link_info.stacksize._4_4_ = 0;\n          if (*end != '\0') {\n            iVar8 = *(int *)puVar2;\n            pcVar7 = (char *)dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar4 + 0xb);\n            einfo(pcVar7,iVar8 + 0xb);\n          }\n          if (link_info.stacksize._4_4_ != 0 || (ulong)link_info.stacksize != 0) {\n            return 1;\n          }\n          link_info.stacksize._0_4_ = 0xffffffff;\n          link_info.stacksize._4_4_ = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar4;\n        pbVar10 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        if ((!bVar13 && !bVar11) == bVar13) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"noexecstack");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"globalaudit");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"global");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"initfirst");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"interpose");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"loadfltr");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodefaultlib");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodelete");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodlopen");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodump");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"now");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags | 8;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"lazy");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags & 0xfffffff7;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"origin");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags | 1;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"combreloc");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocombreloc");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocopyreloc");\n        if (iVar8 == 0) {\n          link_info._0_1_ = link_info._0_1_ | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"relro");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"norelro");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"separate-code");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"noseparate-code");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"common");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocommon");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"text");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar4,"textoff"), iVar8 == 0)) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          link_info.dynamic_undefined_weak = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          link_info.dynamic_undefined_weak = 0;\n          return 1;\n        }\n        pcVar7 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        pcVar7 = (char *)dcgettext(0,pcVar7,5);\n        einfo(pcVar7,pbVar4);\n        return 1;\n      }\n      config.commonpagesize._0_4_ = strtoul((char *)(pbVar4 + 0x11),&end,0);\n      config.commonpagesize._4_4_ = 0;\n      if ((*end == '\0') && (((ulong)config.commonpagesize & (ulong)config.commonpagesize - 1) == 0)\n         ) {\n        config.commonpagesize._4_4_ = 0;\n        return 1;\n      }\n      pcVar5 = "%F%P: invalid common page size `%s\'\n";\n      pcVar7 = (char *)(*(int *)puVar2 + 0x11);\n    }" else (compound_statement "{\n      iVar8 = 0x11;\n      pbVar9 = pbVar4;\n      pbVar10 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar13 = *pbVar9 < *pbVar10;\n        bVar11 = *pbVar9 == *pbVar10;\n        pbVar9 = pbVar9 + 1;\n        pbVar10 = pbVar10 + 1;\n      } while (bVar11);\n      bVar12 = false;\n      bVar11 = (!bVar13 && !bVar11) == bVar13;\n      if (!bVar11) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar4;\n        pbVar10 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        bVar13 = false;\n        bVar11 = (!bVar12 && !bVar11) == bVar12;\n        if (bVar11) {\n          link_info.stacksize._0_4_ = strtoul((char *)(pbVar4 + 0xb),&end,0);\n          link_info.stacksize._4_4_ = 0;\n          if (*end != '\0') {\n            iVar8 = *(int *)puVar2;\n            pcVar7 = (char *)dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar4 + 0xb);\n            einfo(pcVar7,iVar8 + 0xb);\n          }\n          if (link_info.stacksize._4_4_ != 0 || (ulong)link_info.stacksize != 0) {\n            return 1;\n          }\n          link_info.stacksize._0_4_ = 0xffffffff;\n          link_info.stacksize._4_4_ = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar4;\n        pbVar10 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        if ((!bVar13 && !bVar11) == bVar13) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"noexecstack");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"globalaudit");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"global");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"initfirst");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"interpose");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"loadfltr");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodefaultlib");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodelete");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodlopen");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodump");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"now");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags | 8;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"lazy");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags & 0xfffffff7;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"origin");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags | 1;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"combreloc");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocombreloc");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocopyreloc");\n        if (iVar8 == 0) {\n          link_info._0_1_ = link_info._0_1_ | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"relro");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"norelro");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"separate-code");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"noseparate-code");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"common");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocommon");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"text");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar4,"textoff"), iVar8 == 0)) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          link_info.dynamic_undefined_weak = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          link_info.dynamic_undefined_weak = 0;\n          return 1;\n        }\n        pcVar7 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        pcVar7 = (char *)dcgettext(0,pcVar7,5);\n        einfo(pcVar7,pbVar4);\n        return 1;\n      }\n      config.commonpagesize._0_4_ = strtoul((char *)(pbVar4 + 0x11),&end,0);\n      config.commonpagesize._4_4_ = 0;\n      if ((*end == '\0') && (((ulong)config.commonpagesize & (ulong)config.commonpagesize - 1) == 0)\n         ) {\n        config.commonpagesize._4_4_ = 0;\n        return 1;\n      }\n      pcVar5 = "%F%P: invalid common page size `%s\'\n";\n      pcVar7 = (char *)(*(int *)puVar2 + 0x11);\n    }" { (expression_statement "iVar8 = 0x11;" (assignment_expression "iVar8 = 0x11" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar4;" (assignment_expression "pbVar9 = pbVar4" identifier = identifier) ;) (expression_statement "pbVar10 = (byte *)"common-page-size=";" (assignment_expression "pbVar10 = (byte *)"common-page-size="" identifier = (cast_expression "(byte *)"common-page-size="" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal ""common-page-size="" " string_content "))) ;) (do_statement "do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar13 = *pbVar9 < *pbVar10;\n        bVar11 = *pbVar9 == *pbVar10;\n        pbVar9 = pbVar9 + 1;\n        pbVar10 = pbVar10 + 1;\n      } while (bVar11);" do (compound_statement "{\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar13 = *pbVar9 < *pbVar10;\n        bVar11 = *pbVar9 == *pbVar10;\n        pbVar9 = pbVar9 + 1;\n        pbVar10 = pbVar10 + 1;\n      }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar13 = *pbVar9 < *pbVar10;" (assignment_expression "bVar13 = *pbVar9 < *pbVar10" identifier = (binary_expression "*pbVar9 < *pbVar10" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar10" * identifier))) ;) (expression_statement "bVar11 = *pbVar9 == *pbVar10;" (assignment_expression "bVar11 = *pbVar9 == *pbVar10" identifier = (binary_expression "*pbVar9 == *pbVar10" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar10" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar10 = pbVar10 + 1;" (assignment_expression "pbVar10 = pbVar10 + 1" identifier = (binary_expression "pbVar10 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar11)" ( identifier )) ;) (expression_statement "bVar12 = false;" (assignment_expression "bVar12 = false" identifier = false) ;) (expression_statement "bVar11 = (!bVar13 && !bVar11) == bVar13;" (assignment_expression "bVar11 = (!bVar13 && !bVar11) == bVar13" identifier = (binary_expression "(!bVar13 && !bVar11) == bVar13" (parenthesized_expression "(!bVar13 && !bVar11)" ( (binary_expression "!bVar13 && !bVar11" (unary_expression "!bVar13" ! identifier) && (unary_expression "!bVar11" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar11) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar4;\n        pbVar10 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        bVar13 = false;\n        bVar11 = (!bVar12 && !bVar11) == bVar12;\n        if (bVar11) {\n          link_info.stacksize._0_4_ = strtoul((char *)(pbVar4 + 0xb),&end,0);\n          link_info.stacksize._4_4_ = 0;\n          if (*end != '\0') {\n            iVar8 = *(int *)puVar2;\n            pcVar7 = (char *)dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar4 + 0xb);\n            einfo(pcVar7,iVar8 + 0xb);\n          }\n          if (link_info.stacksize._4_4_ != 0 || (ulong)link_info.stacksize != 0) {\n            return 1;\n          }\n          link_info.stacksize._0_4_ = 0xffffffff;\n          link_info.stacksize._4_4_ = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar4;\n        pbVar10 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        if ((!bVar13 && !bVar11) == bVar13) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"noexecstack");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"globalaudit");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"global");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"initfirst");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"interpose");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"loadfltr");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodefaultlib");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodelete");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodlopen");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodump");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"now");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags | 8;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"lazy");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags & 0xfffffff7;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"origin");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags | 1;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"combreloc");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocombreloc");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocopyreloc");\n        if (iVar8 == 0) {\n          link_info._0_1_ = link_info._0_1_ | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"relro");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"norelro");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"separate-code");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"noseparate-code");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"common");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocommon");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"text");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar4,"textoff"), iVar8 == 0)) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          link_info.dynamic_undefined_weak = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          link_info.dynamic_undefined_weak = 0;\n          return 1;\n        }\n        pcVar7 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        pcVar7 = (char *)dcgettext(0,pcVar7,5);\n        einfo(pcVar7,pbVar4);\n        return 1;\n      }" if (parenthesized_expression "(!bVar11)" ( (unary_expression "!bVar11" ! identifier) )) (compound_statement "{\n        iVar8 = 0xb;\n        pbVar9 = pbVar4;\n        pbVar10 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        bVar13 = false;\n        bVar11 = (!bVar12 && !bVar11) == bVar12;\n        if (bVar11) {\n          link_info.stacksize._0_4_ = strtoul((char *)(pbVar4 + 0xb),&end,0);\n          link_info.stacksize._4_4_ = 0;\n          if (*end != '\0') {\n            iVar8 = *(int *)puVar2;\n            pcVar7 = (char *)dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar4 + 0xb);\n            einfo(pcVar7,iVar8 + 0xb);\n          }\n          if (link_info.stacksize._4_4_ != 0 || (ulong)link_info.stacksize != 0) {\n            return 1;\n          }\n          link_info.stacksize._0_4_ = 0xffffffff;\n          link_info.stacksize._4_4_ = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar4;\n        pbVar10 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        if ((!bVar13 && !bVar11) == bVar13) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"noexecstack");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"globalaudit");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"global");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"initfirst");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"interpose");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"loadfltr");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodefaultlib");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodelete");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodlopen");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodump");\n        if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"now");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags | 8;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"lazy");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags & 0xfffffff7;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"origin");\n        if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags | 1;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"combreloc");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocombreloc");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocopyreloc");\n        if (iVar8 == 0) {\n          link_info._0_1_ = link_info._0_1_ | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"relro");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"norelro");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"separate-code");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"noseparate-code");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"common");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nocommon");\n        if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"text");\n        if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar4,"textoff"), iVar8 == 0)) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          link_info.dynamic_undefined_weak = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar4,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          link_info.dynamic_undefined_weak = 0;\n          return 1;\n        }\n        pcVar7 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        pcVar7 = (char *)dcgettext(0,pcVar7,5);\n        einfo(pcVar7,pbVar4);\n        return 1;\n      }" { (expression_statement "iVar8 = 0xb;" (assignment_expression "iVar8 = 0xb" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar4;" (assignment_expression "pbVar9 = pbVar4" identifier = identifier) ;) (expression_statement "pbVar10 = (byte *)"stack-size=";" (assignment_expression "pbVar10 = (byte *)"stack-size="" identifier = (cast_expression "(byte *)"stack-size="" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal ""stack-size="" " string_content "))) ;) (do_statement "do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);" do (compound_statement "{\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar12 = *pbVar9 < *pbVar10;" (assignment_expression "bVar12 = *pbVar9 < *pbVar10" identifier = (binary_expression "*pbVar9 < *pbVar10" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar10" * identifier))) ;) (expression_statement "bVar11 = *pbVar9 == *pbVar10;" (assignment_expression "bVar11 = *pbVar9 == *pbVar10" identifier = (binary_expression "*pbVar9 == *pbVar10" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar10" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar10 = pbVar10 + 1;" (assignment_expression "pbVar10 = pbVar10 + 1" identifier = (binary_expression "pbVar10 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar11)" ( identifier )) ;) (expression_statement "bVar13 = false;" (assignment_expression "bVar13 = false" identifier = false) ;) (expression_statement "bVar11 = (!bVar12 && !bVar11) == bVar12;" (assignment_expression "bVar11 = (!bVar12 && !bVar11) == bVar12" identifier = (binary_expression "(!bVar12 && !bVar11) == bVar12" (parenthesized_expression "(!bVar12 && !bVar11)" ( (binary_expression "!bVar12 && !bVar11" (unary_expression "!bVar12" ! identifier) && (unary_expression "!bVar11" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar11) {\n          link_info.stacksize._0_4_ = strtoul((char *)(pbVar4 + 0xb),&end,0);\n          link_info.stacksize._4_4_ = 0;\n          if (*end != '\0') {\n            iVar8 = *(int *)puVar2;\n            pcVar7 = (char *)dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar4 + 0xb);\n            einfo(pcVar7,iVar8 + 0xb);\n          }\n          if (link_info.stacksize._4_4_ != 0 || (ulong)link_info.stacksize != 0) {\n            return 1;\n          }\n          link_info.stacksize._0_4_ = 0xffffffff;\n          link_info.stacksize._4_4_ = 0xffffffff;\n          return 1;\n        }" if (parenthesized_expression "(bVar11)" ( identifier )) (compound_statement "{\n          link_info.stacksize._0_4_ = strtoul((char *)(pbVar4 + 0xb),&end,0);\n          link_info.stacksize._4_4_ = 0;\n          if (*end != '\0') {\n            iVar8 = *(int *)puVar2;\n            pcVar7 = (char *)dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar4 + 0xb);\n            einfo(pcVar7,iVar8 + 0xb);\n          }\n          if (link_info.stacksize._4_4_ != 0 || (ulong)link_info.stacksize != 0) {\n            return 1;\n          }\n          link_info.stacksize._0_4_ = 0xffffffff;\n          link_info.stacksize._4_4_ = 0xffffffff;\n          return 1;\n        }" { (expression_statement "link_info.stacksize._0_4_ = strtoul((char *)(pbVar4 + 0xb),&end,0);" (assignment_expression "link_info.stacksize._0_4_ = strtoul((char *)(pbVar4 + 0xb),&end,0)" (field_expression "link_info.stacksize._0_4_" (field_expression "link_info.stacksize" identifier . field_identifier) . field_identifier) = (call_expression "strtoul((char *)(pbVar4 + 0xb),&end,0)" identifier (argument_list "((char *)(pbVar4 + 0xb),&end,0)" ( (cast_expression "(char *)(pbVar4 + 0xb)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar4 + 0xb)" ( (binary_expression "pbVar4 + 0xb" identifier + number_literal) ))) , (pointer_expression "&end" & identifier) , number_literal )))) ;) (expression_statement "link_info.stacksize._4_4_ = 0;" (assignment_expression "link_info.stacksize._4_4_ = 0" (field_expression "link_info.stacksize._4_4_" (field_expression "link_info.stacksize" identifier . field_identifier) . field_identifier) = number_literal) ;) (if_statement "if (*end != '\0') {\n            iVar8 = *(int *)puVar2;\n            pcVar7 = (char *)dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar4 + 0xb);\n            einfo(pcVar7,iVar8 + 0xb);\n          }" if (parenthesized_expression "(*end != '\0')" ( (binary_expression "*end != '\0'" (pointer_expression "*end" * identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            iVar8 = *(int *)puVar2;\n            pcVar7 = (char *)dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar4 + 0xb);\n            einfo(pcVar7,iVar8 + 0xb);\n          }" { (expression_statement "iVar8 = *(int *)puVar2;" (assignment_expression "iVar8 = *(int *)puVar2" identifier = (pointer_expression "*(int *)puVar2" * (cast_expression "(int *)puVar2" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "pcVar7 = (char *)dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar4 + 0xb);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar4 + 0xb)" identifier = (cast_expression "(char *)dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar4 + 0xb)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar4 + 0xb)" identifier (argument_list "(0,"%F%P: invalid stack size `%s\'\n",5,pbVar4 + 0xb)" ( number_literal , (string_literal ""%F%P: invalid stack size `%s\'\n"" " string_content escape_sequence escape_sequence ") , number_literal , (binary_expression "pbVar4 + 0xb" identifier + number_literal) ))))) ;) (expression_statement "einfo(pcVar7,iVar8 + 0xb);" (call_expression "einfo(pcVar7,iVar8 + 0xb)" identifier (argument_list "(pcVar7,iVar8 + 0xb)" ( identifier , (binary_expression "iVar8 + 0xb" identifier + number_literal) ))) ;) })) (if_statement "if (link_info.stacksize._4_4_ != 0 || (ulong)link_info.stacksize != 0) {\n            return 1;\n          }" if (parenthesized_expression "(link_info.stacksize._4_4_ != 0 || (ulong)link_info.stacksize != 0)" ( (binary_expression "link_info.stacksize._4_4_ != 0 || (ulong)link_info.stacksize != 0" (binary_expression "link_info.stacksize._4_4_ != 0" (field_expression "link_info.stacksize._4_4_" (field_expression "link_info.stacksize" identifier . field_identifier) . field_identifier) != number_literal) || (binary_expression "(ulong)link_info.stacksize != 0" (cast_expression "(ulong)link_info.stacksize" ( (type_descriptor "ulong" type_identifier) ) (field_expression "link_info.stacksize" identifier . field_identifier)) != number_literal)) )) (compound_statement "{\n            return 1;\n          }" { (return_statement "return 1;" return number_literal ;) })) (expression_statement "link_info.stacksize._0_4_ = 0xffffffff;" (assignment_expression "link_info.stacksize._0_4_ = 0xffffffff" (field_expression "link_info.stacksize._0_4_" (field_expression "link_info.stacksize" identifier . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "link_info.stacksize._4_4_ = 0xffffffff;" (assignment_expression "link_info.stacksize._4_4_ = 0xffffffff" (field_expression "link_info.stacksize._4_4_" (field_expression "link_info.stacksize" identifier . field_identifier) . field_identifier) = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = 10;" (assignment_expression "iVar8 = 10" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar4;" (assignment_expression "pbVar9 = pbVar4" identifier = identifier) ;) (expression_statement "pbVar10 = (byte *)0xa55ed;" (assignment_expression "pbVar10 = (byte *)0xa55ed" identifier = (cast_expression "(byte *)0xa55ed" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);" do (compound_statement "{\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar13 = *pbVar9 < *pbVar10;" (assignment_expression "bVar13 = *pbVar9 < *pbVar10" identifier = (binary_expression "*pbVar9 < *pbVar10" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar10" * identifier))) ;) (expression_statement "bVar11 = *pbVar9 == *pbVar10;" (assignment_expression "bVar11 = *pbVar9 == *pbVar10" identifier = (binary_expression "*pbVar9 == *pbVar10" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar10" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar10 = pbVar10 + 1;" (assignment_expression "pbVar10 = pbVar10 + 1" identifier = (binary_expression "pbVar10 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar11)" ( identifier )) ;) (if_statement "if ((!bVar13 && !bVar11) == bVar13) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x8000;\n          return 1;\n        }" if (parenthesized_expression "((!bVar13 && !bVar11) == bVar13)" ( (binary_expression "(!bVar13 && !bVar11) == bVar13" (parenthesized_expression "(!bVar13 && !bVar11)" ( (binary_expression "!bVar13 && !bVar11" (unary_expression "!bVar13" ! identifier) && (unary_expression "!bVar11" ! identifier)) )) == identifier) )) (compound_statement "{\n          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x8000;\n          return 1;\n        }" { (expression_statement "link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x8000;" (assignment_expression "link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x8000" (field_expression "link_info._4_4_" identifier . field_identifier) = (binary_expression "link_info._4_4_ & 0xfffe7fff | 0x8000" (binary_expression "link_info._4_4_ & 0xfffe7fff" (field_expression "link_info._4_4_" identifier . field_identifier) & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar4,"noexecstack");" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"noexecstack")" identifier = (call_expression "strcmp((char *)pbVar4,"noexecstack")" identifier (argument_list "((char *)pbVar4,"noexecstack")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""noexecstack"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x10000;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x10000;\n          return 1;\n        }" { (expression_statement "link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x10000;" (assignment_expression "link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x10000" (field_expression "link_info._4_4_" identifier . field_identifier) = (binary_expression "link_info._4_4_ & 0xfffe7fff | 0x10000" (binary_expression "link_info._4_4_ & 0xfffe7fff" (field_expression "link_info._4_4_" identifier . field_identifier) & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar4,"globalaudit");" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"globalaudit")" identifier = (call_expression "strcmp((char *)pbVar4,"globalaudit")" identifier (argument_list "((char *)pbVar4,"globalaudit")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""globalaudit"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000000;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000000;\n          return 1;\n        }" { (expression_statement "link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000000;" (assignment_expression "link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000000" (field_expression "link_info.flags_1._0_4_" (field_expression "link_info.flags_1" identifier . field_identifier) . field_identifier) = (binary_expression "(uint)link_info.flags_1 | 0x1000000" (cast_expression "(uint)link_info.flags_1" ( (type_descriptor "uint" type_identifier) ) (field_expression "link_info.flags_1" identifier . field_identifier)) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar4,"global");" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"global")" identifier = (call_expression "strcmp((char *)pbVar4,"global")" identifier (argument_list "((char *)pbVar4,"global")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""global"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 2;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 2;\n          return 1;\n        }" { (expression_statement "link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 2;" (assignment_expression "link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 2" (field_expression "link_info.flags_1._0_4_" (field_expression "link_info.flags_1" identifier . field_identifier) . field_identifier) = (binary_expression "(uint)link_info.flags_1 | 2" (cast_expression "(uint)link_info.flags_1" ( (type_descriptor "uint" type_identifier) ) (field_expression "link_info.flags_1" identifier . field_identifier)) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar4,"initfirst");" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"initfirst")" identifier = (call_expression "strcmp((char *)pbVar4,"initfirst")" identifier (argument_list "((char *)pbVar4,"initfirst")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""initfirst"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x20;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x20;\n          return 1;\n        }" { (expression_statement "link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x20;" (assignment_expression "link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x20" (field_expression "link_info.flags_1._0_4_" (field_expression "link_info.flags_1" identifier . field_identifier) . field_identifier) = (binary_expression "(uint)link_info.flags_1 | 0x20" (cast_expression "(uint)link_info.flags_1" ( (type_descriptor "uint" type_identifier) ) (field_expression "link_info.flags_1" identifier . field_identifier)) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar4,"interpose");" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"interpose")" identifier = (call_expression "strcmp((char *)pbVar4,"interpose")" identifier (argument_list "((char *)pbVar4,"interpose")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""interpose"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x400;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x400;\n          return 1;\n        }" { (expression_statement "link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x400;" (assignment_expression "link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x400" (field_expression "link_info.flags_1._0_4_" (field_expression "link_info.flags_1" identifier . field_identifier) . field_identifier) = (binary_expression "(uint)link_info.flags_1 | 0x400" (cast_expression "(uint)link_info.flags_1" ( (type_descriptor "uint" type_identifier) ) (field_expression "link_info.flags_1" identifier . field_identifier)) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar4,"loadfltr");" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"loadfltr")" identifier = (call_expression "strcmp((char *)pbVar4,"loadfltr")" identifier (argument_list "((char *)pbVar4,"loadfltr")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""loadfltr"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x10;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x10;\n          return 1;\n        }" { (expression_statement "link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x10;" (assignment_expression "link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x10" (field_expression "link_info.flags_1._0_4_" (field_expression "link_info.flags_1" identifier . field_identifier) . field_identifier) = (binary_expression "(uint)link_info.flags_1 | 0x10" (cast_expression "(uint)link_info.flags_1" ( (type_descriptor "uint" type_identifier) ) (field_expression "link_info.flags_1" identifier . field_identifier)) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar4,"nodefaultlib");" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"nodefaultlib")" identifier = (call_expression "strcmp((char *)pbVar4,"nodefaultlib")" identifier (argument_list "((char *)pbVar4,"nodefaultlib")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""nodefaultlib"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x800;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x800;\n          return 1;\n        }" { (expression_statement "link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x800;" (assignment_expression "link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x800" (field_expression "link_info.flags_1._0_4_" (field_expression "link_info.flags_1" identifier . field_identifier) . field_identifier) = (binary_expression "(uint)link_info.flags_1 | 0x800" (cast_expression "(uint)link_info.flags_1" ( (type_descriptor "uint" type_identifier) ) (field_expression "link_info.flags_1" identifier . field_identifier)) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar4,"nodelete");" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"nodelete")" identifier = (call_expression "strcmp((char *)pbVar4,"nodelete")" identifier (argument_list "((char *)pbVar4,"nodelete")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""nodelete"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 8;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 8;\n          return 1;\n        }" { (expression_statement "link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 8;" (assignment_expression "link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 8" (field_expression "link_info.flags_1._0_4_" (field_expression "link_info.flags_1" identifier . field_identifier) . field_identifier) = (binary_expression "(uint)link_info.flags_1 | 8" (cast_expression "(uint)link_info.flags_1" ( (type_descriptor "uint" type_identifier) ) (field_expression "link_info.flags_1" identifier . field_identifier)) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar4,"nodlopen");" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"nodlopen")" identifier = (call_expression "strcmp((char *)pbVar4,"nodlopen")" identifier (argument_list "((char *)pbVar4,"nodlopen")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""nodlopen"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x40;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x40;\n          return 1;\n        }" { (expression_statement "link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x40;" (assignment_expression "link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x40" (field_expression "link_info.flags_1._0_4_" (field_expression "link_info.flags_1" identifier . field_identifier) . field_identifier) = (binary_expression "(uint)link_info.flags_1 | 0x40" (cast_expression "(uint)link_info.flags_1" ( (type_descriptor "uint" type_identifier) ) (field_expression "link_info.flags_1" identifier . field_identifier)) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar4,"nodump");" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"nodump")" identifier = (call_expression "strcmp((char *)pbVar4,"nodump")" identifier (argument_list "((char *)pbVar4,"nodump")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""nodump"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000;\n          return 1;\n        }" { (expression_statement "link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000;" (assignment_expression "link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x1000" (field_expression "link_info.flags_1._0_4_" (field_expression "link_info.flags_1" identifier . field_identifier) . field_identifier) = (binary_expression "(uint)link_info.flags_1 | 0x1000" (cast_expression "(uint)link_info.flags_1" ( (type_descriptor "uint" type_identifier) ) (field_expression "link_info.flags_1" identifier . field_identifier)) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar4,"now");" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"now")" identifier = (call_expression "strcmp((char *)pbVar4,"now")" identifier (argument_list "((char *)pbVar4,"now")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""now"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags | 8;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 1;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          link_info.flags._0_4_ = (uint)link_info.flags | 8;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 1;\n          return 1;\n        }" { (expression_statement "link_info.flags._0_4_ = (uint)link_info.flags | 8;" (assignment_expression "link_info.flags._0_4_ = (uint)link_info.flags | 8" (field_expression "link_info.flags._0_4_" (field_expression "link_info.flags" identifier . field_identifier) . field_identifier) = (binary_expression "(uint)link_info.flags | 8" (cast_expression "(uint)link_info.flags" ( (type_descriptor "uint" type_identifier) ) (field_expression "link_info.flags" identifier . field_identifier)) | number_literal)) ;) (expression_statement "link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 1;" (assignment_expression "link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 1" (field_expression "link_info.flags_1._0_4_" (field_expression "link_info.flags_1" identifier . field_identifier) . field_identifier) = (binary_expression "(uint)link_info.flags_1 | 1" (cast_expression "(uint)link_info.flags_1" ( (type_descriptor "uint" type_identifier) ) (field_expression "link_info.flags_1" identifier . field_identifier)) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar4,"lazy");" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"lazy")" identifier = (call_expression "strcmp((char *)pbVar4,"lazy")" identifier (argument_list "((char *)pbVar4,"lazy")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""lazy"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags & 0xfffffff7;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 & 0xfffffffe;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          link_info.flags._0_4_ = (uint)link_info.flags & 0xfffffff7;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 & 0xfffffffe;\n          return 1;\n        }" { (expression_statement "link_info.flags._0_4_ = (uint)link_info.flags & 0xfffffff7;" (assignment_expression "link_info.flags._0_4_ = (uint)link_info.flags & 0xfffffff7" (field_expression "link_info.flags._0_4_" (field_expression "link_info.flags" identifier . field_identifier) . field_identifier) = (binary_expression "(uint)link_info.flags & 0xfffffff7" (cast_expression "(uint)link_info.flags" ( (type_descriptor "uint" type_identifier) ) (field_expression "link_info.flags" identifier . field_identifier)) & number_literal)) ;) (expression_statement "link_info.flags_1._0_4_ = (uint)link_info.flags_1 & 0xfffffffe;" (assignment_expression "link_info.flags_1._0_4_ = (uint)link_info.flags_1 & 0xfffffffe" (field_expression "link_info.flags_1._0_4_" (field_expression "link_info.flags_1" identifier . field_identifier) . field_identifier) = (binary_expression "(uint)link_info.flags_1 & 0xfffffffe" (cast_expression "(uint)link_info.flags_1" ( (type_descriptor "uint" type_identifier) ) (field_expression "link_info.flags_1" identifier . field_identifier)) & number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar4,"origin");" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"origin")" identifier = (call_expression "strcmp((char *)pbVar4,"origin")" identifier (argument_list "((char *)pbVar4,"origin")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""origin"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          link_info.flags._0_4_ = (uint)link_info.flags | 1;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x80;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          link_info.flags._0_4_ = (uint)link_info.flags | 1;\n          link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x80;\n          return 1;\n        }" { (expression_statement "link_info.flags._0_4_ = (uint)link_info.flags | 1;" (assignment_expression "link_info.flags._0_4_ = (uint)link_info.flags | 1" (field_expression "link_info.flags._0_4_" (field_expression "link_info.flags" identifier . field_identifier) . field_identifier) = (binary_expression "(uint)link_info.flags | 1" (cast_expression "(uint)link_info.flags" ( (type_descriptor "uint" type_identifier) ) (field_expression "link_info.flags" identifier . field_identifier)) | number_literal)) ;) (expression_statement "link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x80;" (assignment_expression "link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 0x80" (field_expression "link_info.flags_1._0_4_" (field_expression "link_info.flags_1" identifier . field_identifier) . field_identifier) = (binary_expression "(uint)link_info.flags_1 | 0x80" (cast_expression "(uint)link_info.flags_1" ( (type_descriptor "uint" type_identifier) ) (field_expression "link_info.flags_1" identifier . field_identifier)) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar4,"combreloc");" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"combreloc")" identifier = (call_expression "strcmp((char *)pbVar4,"combreloc")" identifier (argument_list "((char *)pbVar4,"combreloc")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""combreloc"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ | 0x40;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          link_info._4_4_ = link_info._4_4_ | 0x40;\n          return 1;\n        }" { (expression_statement "link_info._4_4_ = link_info._4_4_ | 0x40;" (assignment_expression "link_info._4_4_ = link_info._4_4_ | 0x40" (field_expression "link_info._4_4_" identifier . field_identifier) = (binary_expression "link_info._4_4_ | 0x40" (field_expression "link_info._4_4_" identifier . field_identifier) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar4,"nocombreloc");" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"nocombreloc")" identifier = (call_expression "strcmp((char *)pbVar4,"nocombreloc")" identifier (argument_list "((char *)pbVar4,"nocombreloc")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""nocombreloc"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ & 0xffffffbf;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          link_info._4_4_ = link_info._4_4_ & 0xffffffbf;\n          return 1;\n        }" { (expression_statement "link_info._4_4_ = link_info._4_4_ & 0xffffffbf;" (assignment_expression "link_info._4_4_ = link_info._4_4_ & 0xffffffbf" (field_expression "link_info._4_4_" identifier . field_identifier) = (binary_expression "link_info._4_4_ & 0xffffffbf" (field_expression "link_info._4_4_" identifier . field_identifier) & number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar4,"nocopyreloc");" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"nocopyreloc")" identifier = (call_expression "strcmp((char *)pbVar4,"nocopyreloc")" identifier (argument_list "((char *)pbVar4,"nocopyreloc")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""nocopyreloc"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          link_info._0_1_ = link_info._0_1_ | 8;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          link_info._0_1_ = link_info._0_1_ | 8;\n          return 1;\n        }" { (expression_statement "link_info._0_1_ = link_info._0_1_ | 8;" (assignment_expression "link_info._0_1_ = link_info._0_1_ | 8" (field_expression "link_info._0_1_" identifier . field_identifier) = (binary_expression "link_info._0_1_ | 8" (field_expression "link_info._0_1_" identifier . field_identifier) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar4,"relro");" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"relro")" identifier = (call_expression "strcmp((char *)pbVar4,"relro")" identifier (argument_list "((char *)pbVar4,"relro")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""relro"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ | 0x1000;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          link_info._2_2_ = link_info._2_2_ | 0x1000;\n          return 1;\n        }" { (expression_statement "link_info._2_2_ = link_info._2_2_ | 0x1000;" (assignment_expression "link_info._2_2_ = link_info._2_2_ | 0x1000" (field_expression "link_info._2_2_" identifier . field_identifier) = (binary_expression "link_info._2_2_ | 0x1000" (field_expression "link_info._2_2_" identifier . field_identifier) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar4,"norelro");" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"norelro")" identifier = (call_expression "strcmp((char *)pbVar4,"norelro")" identifier (argument_list "((char *)pbVar4,"norelro")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""norelro"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xefff;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          link_info._2_2_ = link_info._2_2_ & 0xefff;\n          return 1;\n        }" { (expression_statement "link_info._2_2_ = link_info._2_2_ & 0xefff;" (assignment_expression "link_info._2_2_ = link_info._2_2_ & 0xefff" (field_expression "link_info._2_2_" identifier . field_identifier) = (binary_expression "link_info._2_2_ & 0xefff" (field_expression "link_info._2_2_" identifier . field_identifier) & number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar4,"separate-code");" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"separate-code")" identifier = (call_expression "strcmp((char *)pbVar4,"separate-code")" identifier (argument_list "((char *)pbVar4,"separate-code")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""separate-code"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ | 0x2000;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          link_info._2_2_ = link_info._2_2_ | 0x2000;\n          return 1;\n        }" { (expression_statement "link_info._2_2_ = link_info._2_2_ | 0x2000;" (assignment_expression "link_info._2_2_ = link_info._2_2_ | 0x2000" (field_expression "link_info._2_2_" identifier . field_identifier) = (binary_expression "link_info._2_2_ | 0x2000" (field_expression "link_info._2_2_" identifier . field_identifier) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar4,"noseparate-code");" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"noseparate-code")" identifier = (call_expression "strcmp((char *)pbVar4,"noseparate-code")" identifier (argument_list "((char *)pbVar4,"noseparate-code")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""noseparate-code"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xdfff;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          link_info._2_2_ = link_info._2_2_ & 0xdfff;\n          return 1;\n        }" { (expression_statement "link_info._2_2_ = link_info._2_2_ & 0xdfff;" (assignment_expression "link_info._2_2_ = link_info._2_2_ & 0xdfff" (field_expression "link_info._2_2_" identifier . field_identifier) = (binary_expression "link_info._2_2_ & 0xdfff" (field_expression "link_info._2_2_" identifier . field_identifier) & number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar4,"common");" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"common")" identifier = (call_expression "strcmp((char *)pbVar4,"common")" identifier (argument_list "((char *)pbVar4,"common")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""common"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 2;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 2;\n          return 1;\n        }" { (expression_statement "link_info._2_2_ = link_info._2_2_ & 0xfff9 | 2;" (assignment_expression "link_info._2_2_ = link_info._2_2_ & 0xfff9 | 2" (field_expression "link_info._2_2_" identifier . field_identifier) = (binary_expression "link_info._2_2_ & 0xfff9 | 2" (binary_expression "link_info._2_2_ & 0xfff9" (field_expression "link_info._2_2_" identifier . field_identifier) & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar4,"nocommon");" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"nocommon")" identifier = (call_expression "strcmp((char *)pbVar4,"nocommon")" identifier (argument_list "((char *)pbVar4,"nocommon")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""nocommon"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 4;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 4;\n          return 1;\n        }" { (expression_statement "link_info._2_2_ = link_info._2_2_ & 0xfff9 | 4;" (assignment_expression "link_info._2_2_ = link_info._2_2_ & 0xfff9 | 4" (field_expression "link_info._2_2_" identifier . field_identifier) = (binary_expression "link_info._2_2_ & 0xfff9 | 4" (binary_expression "link_info._2_2_ & 0xfff9" (field_expression "link_info._2_2_" identifier . field_identifier) & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar4,"text");" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"text")" identifier = (call_expression "strcmp((char *)pbVar4,"text")" identifier (argument_list "((char *)pbVar4,"text")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""text"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          link_info._4_4_ = link_info._4_4_ | 2;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          link_info._4_4_ = link_info._4_4_ | 2;\n          return 1;\n        }" { (expression_statement "link_info._4_4_ = link_info._4_4_ | 2;" (assignment_expression "link_info._4_4_ = link_info._4_4_ | 2" (field_expression "link_info._4_4_" identifier . field_identifier) = (binary_expression "link_info._4_4_ | 2" (field_expression "link_info._4_4_" identifier . field_identifier) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar4,"notext");" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"notext")" identifier = (call_expression "strcmp((char *)pbVar4,"notext")" identifier (argument_list "((char *)pbVar4,"notext")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""notext"" " string_content ") )))) ;) (if_statement "if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar4,"textoff"), iVar8 == 0)) {\n          link_info._4_4_ = link_info._4_4_ & 0xfffffffd;\n          return 1;\n        }" if (parenthesized_expression "((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar4,"textoff"), iVar8 == 0))" ( (binary_expression "(iVar8 == 0) || (iVar8 = strcmp((char *)pbVar4,"textoff"), iVar8 == 0)" (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) || (parenthesized_expression "(iVar8 = strcmp((char *)pbVar4,"textoff"), iVar8 == 0)" ( (comma_expression "iVar8 = strcmp((char *)pbVar4,"textoff"), iVar8 == 0" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"textoff")" identifier = (call_expression "strcmp((char *)pbVar4,"textoff")" identifier (argument_list "((char *)pbVar4,"textoff")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""textoff"" " string_content ") )))) , (binary_expression "iVar8 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n          link_info._4_4_ = link_info._4_4_ & 0xfffffffd;\n          return 1;\n        }" { (expression_statement "link_info._4_4_ = link_info._4_4_ & 0xfffffffd;" (assignment_expression "link_info._4_4_ = link_info._4_4_ & 0xfffffffd" (field_expression "link_info._4_4_" identifier . field_identifier) = (binary_expression "link_info._4_4_ & 0xfffffffd" (field_expression "link_info._4_4_" identifier . field_identifier) & number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar4,"dynamic-undefined-weak");" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"dynamic-undefined-weak")" identifier = (call_expression "strcmp((char *)pbVar4,"dynamic-undefined-weak")" identifier (argument_list "((char *)pbVar4,"dynamic-undefined-weak")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""dynamic-undefined-weak"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          link_info.dynamic_undefined_weak = 1;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          link_info.dynamic_undefined_weak = 1;\n          return 1;\n        }" { (expression_statement "link_info.dynamic_undefined_weak = 1;" (assignment_expression "link_info.dynamic_undefined_weak = 1" (field_expression "link_info.dynamic_undefined_weak" identifier . field_identifier) = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar4,"nodynamic-undefined-weak");" (assignment_expression "iVar8 = strcmp((char *)pbVar4,"nodynamic-undefined-weak")" identifier = (call_expression "strcmp((char *)pbVar4,"nodynamic-undefined-weak")" identifier (argument_list "((char *)pbVar4,"nodynamic-undefined-weak")" ( (cast_expression "(char *)pbVar4" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""nodynamic-undefined-weak"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          link_info.dynamic_undefined_weak = 0;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          link_info.dynamic_undefined_weak = 0;\n          return 1;\n        }" { (expression_statement "link_info.dynamic_undefined_weak = 0;" (assignment_expression "link_info.dynamic_undefined_weak = 0" (field_expression "link_info.dynamic_undefined_weak" identifier . field_identifier) = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "pcVar7 = "%P: warning: -z %s ignored\n";" (assignment_expression "pcVar7 = "%P: warning: -z %s ignored\n"" identifier = (string_literal ""%P: warning: -z %s ignored\n"" " string_content escape_sequence ")) ;) (labeled_statement "LAB_0004fd61:\n        pcVar7 = (char *)dcgettext(0,pcVar7,5);" statement_identifier : (expression_statement "pcVar7 = (char *)dcgettext(0,pcVar7,5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,pcVar7,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar7,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar7,5)" identifier (argument_list "(0,pcVar7,5)" ( number_literal , identifier , number_literal ))))) ;)) (expression_statement "einfo(pcVar7,pbVar4);" (call_expression "einfo(pcVar7,pbVar4)" identifier (argument_list "(pcVar7,pbVar4)" ( identifier , identifier ))) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "config.commonpagesize._0_4_ = strtoul((char *)(pbVar4 + 0x11),&end,0);" (assignment_expression "config.commonpagesize._0_4_ = strtoul((char *)(pbVar4 + 0x11),&end,0)" (field_expression "config.commonpagesize._0_4_" (field_expression "config.commonpagesize" identifier . field_identifier) . field_identifier) = (call_expression "strtoul((char *)(pbVar4 + 0x11),&end,0)" identifier (argument_list "((char *)(pbVar4 + 0x11),&end,0)" ( (cast_expression "(char *)(pbVar4 + 0x11)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar4 + 0x11)" ( (binary_expression "pbVar4 + 0x11" identifier + number_literal) ))) , (pointer_expression "&end" & identifier) , number_literal )))) ;) (expression_statement "config.commonpagesize._4_4_ = 0;" (assignment_expression "config.commonpagesize._4_4_ = 0" (field_expression "config.commonpagesize._4_4_" (field_expression "config.commonpagesize" identifier . field_identifier) . field_identifier) = number_literal) ;) (if_statement "if ((*end == '\0') && (((ulong)config.commonpagesize & (ulong)config.commonpagesize - 1) == 0)\n         ) {\n        config.commonpagesize._4_4_ = 0;\n        return 1;\n      }" if (parenthesized_expression "((*end == '\0') && (((ulong)config.commonpagesize & (ulong)config.commonpagesize - 1) == 0)\n         )" ( (binary_expression "(*end == '\0') && (((ulong)config.commonpagesize & (ulong)config.commonpagesize - 1) == 0)" (parenthesized_expression "(*end == '\0')" ( (binary_expression "*end == '\0'" (pointer_expression "*end" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(((ulong)config.commonpagesize & (ulong)config.commonpagesize - 1) == 0)" ( (binary_expression "((ulong)config.commonpagesize & (ulong)config.commonpagesize - 1) == 0" (parenthesized_expression "((ulong)config.commonpagesize & (ulong)config.commonpagesize - 1)" ( (binary_expression "(ulong)config.commonpagesize & (ulong)config.commonpagesize - 1" (cast_expression "(ulong)config.commonpagesize" ( (type_descriptor "ulong" type_identifier) ) (field_expression "config.commonpagesize" identifier . field_identifier)) & (binary_expression "(ulong)config.commonpagesize - 1" (cast_expression "(ulong)config.commonpagesize" ( (type_descriptor "ulong" type_identifier) ) (field_expression "config.commonpagesize" identifier . field_identifier)) - number_literal)) )) == number_literal) ))) )) (compound_statement "{\n        config.commonpagesize._4_4_ = 0;\n        return 1;\n      }" { (expression_statement "config.commonpagesize._4_4_ = 0;" (assignment_expression "config.commonpagesize._4_4_ = 0" (field_expression "config.commonpagesize._4_4_" (field_expression "config.commonpagesize" identifier . field_identifier) . field_identifier) = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "pcVar5 = "%F%P: invalid common page size `%s\'\n";" (assignment_expression "pcVar5 = "%F%P: invalid common page size `%s\'\n"" identifier = (string_literal ""%F%P: invalid common page size `%s\'\n"" " string_content escape_sequence escape_sequence ")) ;) (expression_statement "pcVar7 = (char *)(*(int *)puVar2 + 0x11);" (assignment_expression "pcVar7 = (char *)(*(int *)puVar2 + 0x11)" identifier = (cast_expression "(char *)(*(int *)puVar2 + 0x11)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)puVar2 + 0x11)" ( (binary_expression "*(int *)puVar2 + 0x11" (pointer_expression "*(int *)puVar2" * (cast_expression "(int *)puVar2" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) ;) }))) }) (else_clause "else {\n    if (optc == 0x192) {\n      link_info._2_2_ = link_info._2_2_ | 0x1e0;\n      link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 4;\n      return 1;\n    }\n    if (0x192 < optc) {\n      if (optc == 0x196) {\n        pbVar4 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar11 = false;\n        bVar13 = (link_info._4_4_ & 0xf3) == 0;\n        link_info._4_4_ = link_info._4_4_ & 0xfffffff3;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar11 = *pbVar9 < *pbVar10;\n          bVar13 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar13);\n        bVar12 = false;\n        bVar11 = (!bVar11 && !bVar13) == bVar11;\n        if (bVar11) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        bVar13 = false;\n        bVar11 = (!bVar12 && !bVar11) == bVar12;\n        if (bVar11) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        if ((!bVar13 && !bVar11) == bVar13) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar7 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if (optc < 0x197) {\n        if (optc == 0x194) {\n          link_info._2_2_ = link_info._2_2_ & 0x3fff;\n          return 1;\n        }\n        if (optc < 0x195) {\n          link_info._2_2_ = link_info._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        add_excluded_libs(*(char **)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (optc == 0x198) {\n        gldelf32lppcsim_append_to_separated_string(&audit,*(char **)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (optc < 0x198) {\n        if (emit_note_gnu_build_id != (char *)0x0) {\n          free(emit_note_gnu_build_id);\n          emit_note_gnu_build_id = (char *)0x0;\n        }\n        pbVar4 = *(byte **)PTR_optarg_001befe4;\n        bVar11 = false;\n        bVar13 = pbVar4 == (byte *)0x0;\n        if (bVar13) {\n          pbVar4 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar4;\n          pbVar10 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar11 = *pbVar9 < *pbVar10;\n            bVar13 = *pbVar9 == *pbVar10;\n            pbVar9 = pbVar9 + (uint)bVar14 * -2 + 1;\n            pbVar10 = pbVar10 + (uint)bVar14 * -2 + 1;\n          } while (bVar13);\n          if ((!bVar11 && !bVar13) == bVar11) {\n            return 1;\n          }\n        }\n        emit_note_gnu_build_id = (char *)xstrdup(pbVar4);\n        return 1;\n      }\n      if (optc != 0x199) {\n        return 0;\n      }\n      pcVar7 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar7,"none");\n      if (iVar8 == 0) {\n        link_info.compress_debug = COMPRESS_DEBUG_NONE;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar7,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar7,"zlib-gnu");\n        if (iVar8 == 0) {\n          link_info.compress_debug = COMPRESS_DEBUG_GNU_ZLIB;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar7,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar5 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      link_info.compress_debug = COMPRESS_DEBUG_GABI_ZLIB;\n      return 1;\n    }\n    if (optc == 0x14d) {\n      params.pic_fixup = -1;\n      return 1;\n    }\n    if (0x14d < optc) {\n      if (optc == 400) {\n        link_info._4_4_ = link_info._4_4_ & 0xfffffeff;\n        return 1;\n      }\n      if (optc < 0x191) {\n        if (optc == 0x14e) {\n          params.vle_reloc_fixup = 1;\n          return 1;\n        }\n        return 0;\n      }\n      link_info._4_4_ = link_info._4_4_ | 0x100;\n      return 1;\n    }\n    if (optc != 0x14b) {\n      if (optc == 0x14c) {\n        params.ppc476_workaround = 0;\n        return 1;\n      }\n      return 0;\n    }\n    params.ppc476_workaround = 1;\n    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      params.ppc476_workaround = 1;\n      return 1;\n    }\n    params.pagesize._0_4_ = strtoul(*(char **)PTR_optarg_001befe4,&end,0);\n    params.pagesize._4_4_ = 0;\n    if (((*end == '\0') &&\n        (iVar8 = ((ulong)params.pagesize != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < (ulong)params.pagesize - 1))) &&\n       (((ulong)params.pagesize - 1 & (ulong)params.pagesize) == 0)) {\n      params.pagesize._4_4_ = 0;\n      return 1;\n    }\n    pcVar7 = *(char **)puVar2;\n    pcVar5 = "%F%P: invalid pagesize `%s\'\n";\n  }" else (compound_statement "{\n    if (optc == 0x192) {\n      link_info._2_2_ = link_info._2_2_ | 0x1e0;\n      link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 4;\n      return 1;\n    }\n    if (0x192 < optc) {\n      if (optc == 0x196) {\n        pbVar4 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar11 = false;\n        bVar13 = (link_info._4_4_ & 0xf3) == 0;\n        link_info._4_4_ = link_info._4_4_ & 0xfffffff3;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar11 = *pbVar9 < *pbVar10;\n          bVar13 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar13);\n        bVar12 = false;\n        bVar11 = (!bVar11 && !bVar13) == bVar11;\n        if (bVar11) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        bVar13 = false;\n        bVar11 = (!bVar12 && !bVar11) == bVar12;\n        if (bVar11) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        if ((!bVar13 && !bVar11) == bVar13) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar7 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if (optc < 0x197) {\n        if (optc == 0x194) {\n          link_info._2_2_ = link_info._2_2_ & 0x3fff;\n          return 1;\n        }\n        if (optc < 0x195) {\n          link_info._2_2_ = link_info._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        add_excluded_libs(*(char **)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (optc == 0x198) {\n        gldelf32lppcsim_append_to_separated_string(&audit,*(char **)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (optc < 0x198) {\n        if (emit_note_gnu_build_id != (char *)0x0) {\n          free(emit_note_gnu_build_id);\n          emit_note_gnu_build_id = (char *)0x0;\n        }\n        pbVar4 = *(byte **)PTR_optarg_001befe4;\n        bVar11 = false;\n        bVar13 = pbVar4 == (byte *)0x0;\n        if (bVar13) {\n          pbVar4 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar4;\n          pbVar10 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar11 = *pbVar9 < *pbVar10;\n            bVar13 = *pbVar9 == *pbVar10;\n            pbVar9 = pbVar9 + (uint)bVar14 * -2 + 1;\n            pbVar10 = pbVar10 + (uint)bVar14 * -2 + 1;\n          } while (bVar13);\n          if ((!bVar11 && !bVar13) == bVar11) {\n            return 1;\n          }\n        }\n        emit_note_gnu_build_id = (char *)xstrdup(pbVar4);\n        return 1;\n      }\n      if (optc != 0x199) {\n        return 0;\n      }\n      pcVar7 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar7,"none");\n      if (iVar8 == 0) {\n        link_info.compress_debug = COMPRESS_DEBUG_NONE;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar7,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar7,"zlib-gnu");\n        if (iVar8 == 0) {\n          link_info.compress_debug = COMPRESS_DEBUG_GNU_ZLIB;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar7,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar5 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      link_info.compress_debug = COMPRESS_DEBUG_GABI_ZLIB;\n      return 1;\n    }\n    if (optc == 0x14d) {\n      params.pic_fixup = -1;\n      return 1;\n    }\n    if (0x14d < optc) {\n      if (optc == 400) {\n        link_info._4_4_ = link_info._4_4_ & 0xfffffeff;\n        return 1;\n      }\n      if (optc < 0x191) {\n        if (optc == 0x14e) {\n          params.vle_reloc_fixup = 1;\n          return 1;\n        }\n        return 0;\n      }\n      link_info._4_4_ = link_info._4_4_ | 0x100;\n      return 1;\n    }\n    if (optc != 0x14b) {\n      if (optc == 0x14c) {\n        params.ppc476_workaround = 0;\n        return 1;\n      }\n      return 0;\n    }\n    params.ppc476_workaround = 1;\n    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      params.ppc476_workaround = 1;\n      return 1;\n    }\n    params.pagesize._0_4_ = strtoul(*(char **)PTR_optarg_001befe4,&end,0);\n    params.pagesize._4_4_ = 0;\n    if (((*end == '\0') &&\n        (iVar8 = ((ulong)params.pagesize != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < (ulong)params.pagesize - 1))) &&\n       (((ulong)params.pagesize - 1 & (ulong)params.pagesize) == 0)) {\n      params.pagesize._4_4_ = 0;\n      return 1;\n    }\n    pcVar7 = *(char **)puVar2;\n    pcVar5 = "%F%P: invalid pagesize `%s\'\n";\n  }" { (if_statement "if (optc == 0x192) {\n      link_info._2_2_ = link_info._2_2_ | 0x1e0;\n      link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 4;\n      return 1;\n    }" if (parenthesized_expression "(optc == 0x192)" ( (binary_expression "optc == 0x192" identifier == number_literal) )) (compound_statement "{\n      link_info._2_2_ = link_info._2_2_ | 0x1e0;\n      link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 4;\n      return 1;\n    }" { (expression_statement "link_info._2_2_ = link_info._2_2_ | 0x1e0;" (assignment_expression "link_info._2_2_ = link_info._2_2_ | 0x1e0" (field_expression "link_info._2_2_" identifier . field_identifier) = (binary_expression "link_info._2_2_ | 0x1e0" (field_expression "link_info._2_2_" identifier . field_identifier) | number_literal)) ;) (expression_statement "link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 4;" (assignment_expression "link_info.flags_1._0_4_ = (uint)link_info.flags_1 | 4" (field_expression "link_info.flags_1._0_4_" (field_expression "link_info.flags_1" identifier . field_identifier) . field_identifier) = (binary_expression "(uint)link_info.flags_1 | 4" (cast_expression "(uint)link_info.flags_1" ( (type_descriptor "uint" type_identifier) ) (field_expression "link_info.flags_1" identifier . field_identifier)) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (0x192 < optc) {\n      if (optc == 0x196) {\n        pbVar4 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar11 = false;\n        bVar13 = (link_info._4_4_ & 0xf3) == 0;\n        link_info._4_4_ = link_info._4_4_ & 0xfffffff3;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar11 = *pbVar9 < *pbVar10;\n          bVar13 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar13);\n        bVar12 = false;\n        bVar11 = (!bVar11 && !bVar13) == bVar11;\n        if (bVar11) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        bVar13 = false;\n        bVar11 = (!bVar12 && !bVar11) == bVar12;\n        if (bVar11) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        if ((!bVar13 && !bVar11) == bVar13) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar7 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if (optc < 0x197) {\n        if (optc == 0x194) {\n          link_info._2_2_ = link_info._2_2_ & 0x3fff;\n          return 1;\n        }\n        if (optc < 0x195) {\n          link_info._2_2_ = link_info._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        add_excluded_libs(*(char **)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (optc == 0x198) {\n        gldelf32lppcsim_append_to_separated_string(&audit,*(char **)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (optc < 0x198) {\n        if (emit_note_gnu_build_id != (char *)0x0) {\n          free(emit_note_gnu_build_id);\n          emit_note_gnu_build_id = (char *)0x0;\n        }\n        pbVar4 = *(byte **)PTR_optarg_001befe4;\n        bVar11 = false;\n        bVar13 = pbVar4 == (byte *)0x0;\n        if (bVar13) {\n          pbVar4 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar4;\n          pbVar10 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar11 = *pbVar9 < *pbVar10;\n            bVar13 = *pbVar9 == *pbVar10;\n            pbVar9 = pbVar9 + (uint)bVar14 * -2 + 1;\n            pbVar10 = pbVar10 + (uint)bVar14 * -2 + 1;\n          } while (bVar13);\n          if ((!bVar11 && !bVar13) == bVar11) {\n            return 1;\n          }\n        }\n        emit_note_gnu_build_id = (char *)xstrdup(pbVar4);\n        return 1;\n      }\n      if (optc != 0x199) {\n        return 0;\n      }\n      pcVar7 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar7,"none");\n      if (iVar8 == 0) {\n        link_info.compress_debug = COMPRESS_DEBUG_NONE;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar7,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar7,"zlib-gnu");\n        if (iVar8 == 0) {\n          link_info.compress_debug = COMPRESS_DEBUG_GNU_ZLIB;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar7,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar5 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      link_info.compress_debug = COMPRESS_DEBUG_GABI_ZLIB;\n      return 1;\n    }" if (parenthesized_expression "(0x192 < optc)" ( (binary_expression "0x192 < optc" number_literal < identifier) )) (compound_statement "{\n      if (optc == 0x196) {\n        pbVar4 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar11 = false;\n        bVar13 = (link_info._4_4_ & 0xf3) == 0;\n        link_info._4_4_ = link_info._4_4_ & 0xfffffff3;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar11 = *pbVar9 < *pbVar10;\n          bVar13 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar13);\n        bVar12 = false;\n        bVar11 = (!bVar11 && !bVar13) == bVar11;\n        if (bVar11) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        bVar13 = false;\n        bVar11 = (!bVar12 && !bVar11) == bVar12;\n        if (bVar11) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        if ((!bVar13 && !bVar11) == bVar13) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar7 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if (optc < 0x197) {\n        if (optc == 0x194) {\n          link_info._2_2_ = link_info._2_2_ & 0x3fff;\n          return 1;\n        }\n        if (optc < 0x195) {\n          link_info._2_2_ = link_info._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        add_excluded_libs(*(char **)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (optc == 0x198) {\n        gldelf32lppcsim_append_to_separated_string(&audit,*(char **)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (optc < 0x198) {\n        if (emit_note_gnu_build_id != (char *)0x0) {\n          free(emit_note_gnu_build_id);\n          emit_note_gnu_build_id = (char *)0x0;\n        }\n        pbVar4 = *(byte **)PTR_optarg_001befe4;\n        bVar11 = false;\n        bVar13 = pbVar4 == (byte *)0x0;\n        if (bVar13) {\n          pbVar4 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar4;\n          pbVar10 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar11 = *pbVar9 < *pbVar10;\n            bVar13 = *pbVar9 == *pbVar10;\n            pbVar9 = pbVar9 + (uint)bVar14 * -2 + 1;\n            pbVar10 = pbVar10 + (uint)bVar14 * -2 + 1;\n          } while (bVar13);\n          if ((!bVar11 && !bVar13) == bVar11) {\n            return 1;\n          }\n        }\n        emit_note_gnu_build_id = (char *)xstrdup(pbVar4);\n        return 1;\n      }\n      if (optc != 0x199) {\n        return 0;\n      }\n      pcVar7 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar7,"none");\n      if (iVar8 == 0) {\n        link_info.compress_debug = COMPRESS_DEBUG_NONE;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar7,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar7,"zlib-gnu");\n        if (iVar8 == 0) {\n          link_info.compress_debug = COMPRESS_DEBUG_GNU_ZLIB;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar7,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar5 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      link_info.compress_debug = COMPRESS_DEBUG_GABI_ZLIB;\n      return 1;\n    }" { (if_statement "if (optc == 0x196) {\n        pbVar4 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar11 = false;\n        bVar13 = (link_info._4_4_ & 0xf3) == 0;\n        link_info._4_4_ = link_info._4_4_ & 0xfffffff3;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar11 = *pbVar9 < *pbVar10;\n          bVar13 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar13);\n        bVar12 = false;\n        bVar11 = (!bVar11 && !bVar13) == bVar11;\n        if (bVar11) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        bVar13 = false;\n        bVar11 = (!bVar12 && !bVar11) == bVar12;\n        if (bVar11) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        if ((!bVar13 && !bVar11) == bVar13) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar7 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }" if (parenthesized_expression "(optc == 0x196)" ( (binary_expression "optc == 0x196" identifier == number_literal) )) (compound_statement "{\n        pbVar4 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar11 = false;\n        bVar13 = (link_info._4_4_ & 0xf3) == 0;\n        link_info._4_4_ = link_info._4_4_ & 0xfffffff3;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar11 = *pbVar9 < *pbVar10;\n          bVar13 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar13);\n        bVar12 = false;\n        bVar11 = (!bVar11 && !bVar13) == bVar11;\n        if (bVar11) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        bVar13 = false;\n        bVar11 = (!bVar12 && !bVar11) == bVar12;\n        if (bVar11) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar4;\n        pbVar10 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);\n        if ((!bVar13 && !bVar11) == bVar13) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar7 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }" { (expression_statement "pbVar4 = *(byte **)PTR_optarg_001befe4;" (assignment_expression "pbVar4 = *(byte **)PTR_optarg_001befe4" identifier = (pointer_expression "*(byte **)PTR_optarg_001befe4" * (cast_expression "(byte **)PTR_optarg_001befe4" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "iVar8 = 5;" (assignment_expression "iVar8 = 5" identifier = number_literal) ;) (expression_statement "bVar11 = false;" (assignment_expression "bVar11 = false" identifier = false) ;) (expression_statement "bVar13 = (link_info._4_4_ & 0xf3) == 0;" (assignment_expression "bVar13 = (link_info._4_4_ & 0xf3) == 0" identifier = (binary_expression "(link_info._4_4_ & 0xf3) == 0" (parenthesized_expression "(link_info._4_4_ & 0xf3)" ( (binary_expression "link_info._4_4_ & 0xf3" (field_expression "link_info._4_4_" identifier . field_identifier) & number_literal) )) == number_literal)) ;) (expression_statement "link_info._4_4_ = link_info._4_4_ & 0xfffffff3;" (assignment_expression "link_info._4_4_ = link_info._4_4_ & 0xfffffff3" (field_expression "link_info._4_4_" identifier . field_identifier) = (binary_expression "link_info._4_4_ & 0xfffffff3" (field_expression "link_info._4_4_" identifier . field_identifier) & number_literal)) ;) (expression_statement "pbVar9 = pbVar4;" (assignment_expression "pbVar9 = pbVar4" identifier = identifier) ;) (expression_statement "pbVar10 = &DAT_000a55a5;" (assignment_expression "pbVar10 = &DAT_000a55a5" identifier = (pointer_expression "&DAT_000a55a5" & identifier)) ;) (do_statement "do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar11 = *pbVar9 < *pbVar10;\n          bVar13 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar13);" do (compound_statement "{\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar11 = *pbVar9 < *pbVar10;\n          bVar13 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar11 = *pbVar9 < *pbVar10;" (assignment_expression "bVar11 = *pbVar9 < *pbVar10" identifier = (binary_expression "*pbVar9 < *pbVar10" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar10" * identifier))) ;) (expression_statement "bVar13 = *pbVar9 == *pbVar10;" (assignment_expression "bVar13 = *pbVar9 == *pbVar10" identifier = (binary_expression "*pbVar9 == *pbVar10" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar10" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar10 = pbVar10 + 1;" (assignment_expression "pbVar10 = pbVar10 + 1" identifier = (binary_expression "pbVar10 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar13)" ( identifier )) ;) (expression_statement "bVar12 = false;" (assignment_expression "bVar12 = false" identifier = false) ;) (expression_statement "bVar11 = (!bVar11 && !bVar13) == bVar11;" (assignment_expression "bVar11 = (!bVar11 && !bVar13) == bVar11" identifier = (binary_expression "(!bVar11 && !bVar13) == bVar11" (parenthesized_expression "(!bVar11 && !bVar13)" ( (binary_expression "!bVar11 && !bVar13" (unary_expression "!bVar11" ! identifier) && (unary_expression "!bVar13" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar11) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 4;\n          return 1;\n        }" if (parenthesized_expression "(bVar11)" ( identifier )) (compound_statement "{\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 4;\n          return 1;\n        }" { (expression_statement "link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 4;" (assignment_expression "link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 4" (field_expression "link_info._4_4_" identifier . field_identifier) = (binary_expression "CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 4" (binary_expression "CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3" (call_expression "CONCAT31(link_info._5_3_,uVar3)" identifier (argument_list "(link_info._5_3_,uVar3)" ( (field_expression "link_info._5_3_" identifier . field_identifier) , identifier ))) & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar4;" (assignment_expression "pbVar9 = pbVar4" identifier = identifier) ;) (expression_statement "pbVar10 = &DAT_000a5597;" (assignment_expression "pbVar10 = &DAT_000a5597" identifier = (pointer_expression "&DAT_000a5597" & identifier)) ;) (do_statement "do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);" do (compound_statement "{\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar12 = *pbVar9 < *pbVar10;" (assignment_expression "bVar12 = *pbVar9 < *pbVar10" identifier = (binary_expression "*pbVar9 < *pbVar10" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar10" * identifier))) ;) (expression_statement "bVar11 = *pbVar9 == *pbVar10;" (assignment_expression "bVar11 = *pbVar9 == *pbVar10" identifier = (binary_expression "*pbVar9 == *pbVar10" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar10" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar10 = pbVar10 + 1;" (assignment_expression "pbVar10 = pbVar10 + 1" identifier = (binary_expression "pbVar10 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar11)" ( identifier )) ;) (expression_statement "bVar13 = false;" (assignment_expression "bVar13 = false" identifier = false) ;) (expression_statement "bVar11 = (!bVar12 && !bVar11) == bVar12;" (assignment_expression "bVar11 = (!bVar12 && !bVar11) == bVar12" identifier = (binary_expression "(!bVar12 && !bVar11) == bVar12" (parenthesized_expression "(!bVar12 && !bVar11)" ( (binary_expression "!bVar12 && !bVar11" (unary_expression "!bVar12" ! identifier) && (unary_expression "!bVar11" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar11) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 8;\n          return 1;\n        }" if (parenthesized_expression "(bVar11)" ( identifier )) (compound_statement "{\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 8;\n          return 1;\n        }" { (expression_statement "link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 8;" (assignment_expression "link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 8" (field_expression "link_info._4_4_" identifier . field_identifier) = (binary_expression "CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 8" (binary_expression "CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3" (call_expression "CONCAT31(link_info._5_3_,uVar3)" identifier (argument_list "(link_info._5_3_,uVar3)" ( (field_expression "link_info._5_3_" identifier . field_identifier) , identifier ))) & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = 5;" (assignment_expression "iVar8 = 5" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar4;" (assignment_expression "pbVar9 = pbVar4" identifier = identifier) ;) (expression_statement "pbVar10 = &DAT_000a55aa;" (assignment_expression "pbVar10 = &DAT_000a55aa" identifier = (pointer_expression "&DAT_000a55aa" & identifier)) ;) (do_statement "do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        } while (bVar11);" do (compound_statement "{\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar10;\n          bVar11 = *pbVar9 == *pbVar10;\n          pbVar9 = pbVar9 + 1;\n          pbVar10 = pbVar10 + 1;\n        }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar13 = *pbVar9 < *pbVar10;" (assignment_expression "bVar13 = *pbVar9 < *pbVar10" identifier = (binary_expression "*pbVar9 < *pbVar10" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar10" * identifier))) ;) (expression_statement "bVar11 = *pbVar9 == *pbVar10;" (assignment_expression "bVar11 = *pbVar9 == *pbVar10" identifier = (binary_expression "*pbVar9 == *pbVar10" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar10" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar10 = pbVar10 + 1;" (assignment_expression "pbVar10 = pbVar10 + 1" identifier = (binary_expression "pbVar10 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar11)" ( identifier )) ;) (if_statement "if ((!bVar13 && !bVar11) == bVar13) {\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 0xc;\n          return 1;\n        }" if (parenthesized_expression "((!bVar13 && !bVar11) == bVar13)" ( (binary_expression "(!bVar13 && !bVar11) == bVar13" (parenthesized_expression "(!bVar13 && !bVar11)" ( (binary_expression "!bVar13 && !bVar11" (unary_expression "!bVar13" ! identifier) && (unary_expression "!bVar11" ! identifier)) )) == identifier) )) (compound_statement "{\n          link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 0xc;\n          return 1;\n        }" { (expression_statement "link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 0xc;" (assignment_expression "link_info._4_4_ = CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 0xc" (field_expression "link_info._4_4_" identifier . field_identifier) = (binary_expression "CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3 | 0xc" (binary_expression "CONCAT31(link_info._5_3_,uVar3) & 0xfffffff3" (call_expression "CONCAT31(link_info._5_3_,uVar3)" identifier (argument_list "(link_info._5_3_,uVar3)" ( (field_expression "link_info._5_3_" identifier . field_identifier) , identifier ))) & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "pcVar7 = "%F%P: invalid hash style `%s\'\n";" (assignment_expression "pcVar7 = "%F%P: invalid hash style `%s\'\n"" identifier = (string_literal ""%F%P: invalid hash style `%s\'\n"" " string_content escape_sequence escape_sequence ")) ;) (goto_statement "goto LAB_0004fd61;" goto statement_identifier ;) })) (if_statement "if (optc < 0x197) {\n        if (optc == 0x194) {\n          link_info._2_2_ = link_info._2_2_ & 0x3fff;\n          return 1;\n        }\n        if (optc < 0x195) {\n          link_info._2_2_ = link_info._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        add_excluded_libs(*(char **)PTR_optarg_001befe4);\n        return 1;\n      }" if (parenthesized_expression "(optc < 0x197)" ( (binary_expression "optc < 0x197" identifier < number_literal) )) (compound_statement "{\n        if (optc == 0x194) {\n          link_info._2_2_ = link_info._2_2_ & 0x3fff;\n          return 1;\n        }\n        if (optc < 0x195) {\n          link_info._2_2_ = link_info._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        add_excluded_libs(*(char **)PTR_optarg_001befe4);\n        return 1;\n      }" { (if_statement "if (optc == 0x194) {\n          link_info._2_2_ = link_info._2_2_ & 0x3fff;\n          return 1;\n        }" if (parenthesized_expression "(optc == 0x194)" ( (binary_expression "optc == 0x194" identifier == number_literal) )) (compound_statement "{\n          link_info._2_2_ = link_info._2_2_ & 0x3fff;\n          return 1;\n        }" { (expression_statement "link_info._2_2_ = link_info._2_2_ & 0x3fff;" (assignment_expression "link_info._2_2_ = link_info._2_2_ & 0x3fff" (field_expression "link_info._2_2_" identifier . field_identifier) = (binary_expression "link_info._2_2_ & 0x3fff" (field_expression "link_info._2_2_" identifier . field_identifier) & number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (optc < 0x195) {\n          link_info._2_2_ = link_info._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }" if (parenthesized_expression "(optc < 0x195)" ( (binary_expression "optc < 0x195" identifier < number_literal) )) (compound_statement "{\n          link_info._2_2_ = link_info._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }" { (expression_statement "link_info._2_2_ = link_info._2_2_ & 0x3fff | 0x4000;" (assignment_expression "link_info._2_2_ = link_info._2_2_ & 0x3fff | 0x4000" (field_expression "link_info._2_2_" identifier . field_identifier) = (binary_expression "link_info._2_2_ & 0x3fff | 0x4000" (binary_expression "link_info._2_2_ & 0x3fff" (field_expression "link_info._2_2_" identifier . field_identifier) & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "add_excluded_libs(*(char **)PTR_optarg_001befe4);" (call_expression "add_excluded_libs(*(char **)PTR_optarg_001befe4)" identifier (argument_list "(*(char **)PTR_optarg_001befe4)" ( (pointer_expression "*(char **)PTR_optarg_001befe4" * (cast_expression "(char **)PTR_optarg_001befe4" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (optc == 0x198) {\n        gldelf32lppcsim_append_to_separated_string(&audit,*(char **)PTR_optarg_001befe4);\n        return 1;\n      }" if (parenthesized_expression "(optc == 0x198)" ( (binary_expression "optc == 0x198" identifier == number_literal) )) (compound_statement "{\n        gldelf32lppcsim_append_to_separated_string(&audit,*(char **)PTR_optarg_001befe4);\n        return 1;\n      }" { (expression_statement "gldelf32lppcsim_append_to_separated_string(&audit,*(char **)PTR_optarg_001befe4);" (call_expression "gldelf32lppcsim_append_to_separated_string(&audit,*(char **)PTR_optarg_001befe4)" identifier (argument_list "(&audit,*(char **)PTR_optarg_001befe4)" ( (pointer_expression "&audit" & identifier) , (pointer_expression "*(char **)PTR_optarg_001befe4" * (cast_expression "(char **)PTR_optarg_001befe4" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (optc < 0x198) {\n        if (emit_note_gnu_build_id != (char *)0x0) {\n          free(emit_note_gnu_build_id);\n          emit_note_gnu_build_id = (char *)0x0;\n        }\n        pbVar4 = *(byte **)PTR_optarg_001befe4;\n        bVar11 = false;\n        bVar13 = pbVar4 == (byte *)0x0;\n        if (bVar13) {\n          pbVar4 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar4;\n          pbVar10 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar11 = *pbVar9 < *pbVar10;\n            bVar13 = *pbVar9 == *pbVar10;\n            pbVar9 = pbVar9 + (uint)bVar14 * -2 + 1;\n            pbVar10 = pbVar10 + (uint)bVar14 * -2 + 1;\n          } while (bVar13);\n          if ((!bVar11 && !bVar13) == bVar11) {\n            return 1;\n          }\n        }\n        emit_note_gnu_build_id = (char *)xstrdup(pbVar4);\n        return 1;\n      }" if (parenthesized_expression "(optc < 0x198)" ( (binary_expression "optc < 0x198" identifier < number_literal) )) (compound_statement "{\n        if (emit_note_gnu_build_id != (char *)0x0) {\n          free(emit_note_gnu_build_id);\n          emit_note_gnu_build_id = (char *)0x0;\n        }\n        pbVar4 = *(byte **)PTR_optarg_001befe4;\n        bVar11 = false;\n        bVar13 = pbVar4 == (byte *)0x0;\n        if (bVar13) {\n          pbVar4 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar4;\n          pbVar10 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar11 = *pbVar9 < *pbVar10;\n            bVar13 = *pbVar9 == *pbVar10;\n            pbVar9 = pbVar9 + (uint)bVar14 * -2 + 1;\n            pbVar10 = pbVar10 + (uint)bVar14 * -2 + 1;\n          } while (bVar13);\n          if ((!bVar11 && !bVar13) == bVar11) {\n            return 1;\n          }\n        }\n        emit_note_gnu_build_id = (char *)xstrdup(pbVar4);\n        return 1;\n      }" { (if_statement "if (emit_note_gnu_build_id != (char *)0x0) {\n          free(emit_note_gnu_build_id);\n          emit_note_gnu_build_id = (char *)0x0;\n        }" if (parenthesized_expression "(emit_note_gnu_build_id != (char *)0x0)" ( (binary_expression "emit_note_gnu_build_id != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          free(emit_note_gnu_build_id);\n          emit_note_gnu_build_id = (char *)0x0;\n        }" { (expression_statement "free(emit_note_gnu_build_id);" (call_expression "free(emit_note_gnu_build_id)" identifier (argument_list "(emit_note_gnu_build_id)" ( identifier ))) ;) (expression_statement "emit_note_gnu_build_id = (char *)0x0;" (assignment_expression "emit_note_gnu_build_id = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (expression_statement "pbVar4 = *(byte **)PTR_optarg_001befe4;" (assignment_expression "pbVar4 = *(byte **)PTR_optarg_001befe4" identifier = (pointer_expression "*(byte **)PTR_optarg_001befe4" * (cast_expression "(byte **)PTR_optarg_001befe4" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "bVar11 = false;" (assignment_expression "bVar11 = false" identifier = false) ;) (expression_statement "bVar13 = pbVar4 == (byte *)0x0;" (assignment_expression "bVar13 = pbVar4 == (byte *)0x0" identifier = (binary_expression "pbVar4 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (if_statement "if (bVar13) {\n          pbVar4 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar4;\n          pbVar10 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar11 = *pbVar9 < *pbVar10;\n            bVar13 = *pbVar9 == *pbVar10;\n            pbVar9 = pbVar9 + (uint)bVar14 * -2 + 1;\n            pbVar10 = pbVar10 + (uint)bVar14 * -2 + 1;\n          } while (bVar13);\n          if ((!bVar11 && !bVar13) == bVar11) {\n            return 1;\n          }\n        }" if (parenthesized_expression "(bVar13)" ( identifier )) (compound_statement "{\n          pbVar4 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }" { (expression_statement "pbVar4 = &DAT_000732c8;" (assignment_expression "pbVar4 = &DAT_000732c8" identifier = (pointer_expression "&DAT_000732c8" & identifier)) ;) (expression_statement "*(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;" (assignment_expression "*(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8" (pointer_expression "*(undefined1 **)PTR_optarg_001befe4" * (cast_expression "(undefined1 **)PTR_optarg_001befe4" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) = (pointer_expression "&DAT_000732c8" & identifier)) ;) }) (else_clause "else {\n          iVar8 = 5;\n          pbVar9 = pbVar4;\n          pbVar10 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar11 = *pbVar9 < *pbVar10;\n            bVar13 = *pbVar9 == *pbVar10;\n            pbVar9 = pbVar9 + (uint)bVar14 * -2 + 1;\n            pbVar10 = pbVar10 + (uint)bVar14 * -2 + 1;\n          } while (bVar13);\n          if ((!bVar11 && !bVar13) == bVar11) {\n            return 1;\n          }\n        }" else (compound_statement "{\n          iVar8 = 5;\n          pbVar9 = pbVar4;\n          pbVar10 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar11 = *pbVar9 < *pbVar10;\n            bVar13 = *pbVar9 == *pbVar10;\n            pbVar9 = pbVar9 + (uint)bVar14 * -2 + 1;\n            pbVar10 = pbVar10 + (uint)bVar14 * -2 + 1;\n          } while (bVar13);\n          if ((!bVar11 && !bVar13) == bVar11) {\n            return 1;\n          }\n        }" { (expression_statement "iVar8 = 5;" (assignment_expression "iVar8 = 5" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar4;" (assignment_expression "pbVar9 = pbVar4" identifier = identifier) ;) (expression_statement "pbVar10 = (byte *)0x6ebed;" (assignment_expression "pbVar10 = (byte *)0x6ebed" identifier = (cast_expression "(byte *)0x6ebed" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar11 = *pbVar9 < *pbVar10;\n            bVar13 = *pbVar9 == *pbVar10;\n            pbVar9 = pbVar9 + (uint)bVar14 * -2 + 1;\n            pbVar10 = pbVar10 + (uint)bVar14 * -2 + 1;\n          } while (bVar13);" do (compound_statement "{\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar11 = *pbVar9 < *pbVar10;\n            bVar13 = *pbVar9 == *pbVar10;\n            pbVar9 = pbVar9 + (uint)bVar14 * -2 + 1;\n            pbVar10 = pbVar10 + (uint)bVar14 * -2 + 1;\n          }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar11 = *pbVar9 < *pbVar10;" (assignment_expression "bVar11 = *pbVar9 < *pbVar10" identifier = (binary_expression "*pbVar9 < *pbVar10" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar10" * identifier))) ;) (expression_statement "bVar13 = *pbVar9 == *pbVar10;" (assignment_expression "bVar13 = *pbVar9 == *pbVar10" identifier = (binary_expression "*pbVar9 == *pbVar10" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar10" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (uint)bVar14 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (uint)bVar14 * -2 + 1" identifier = (binary_expression "pbVar9 + (uint)bVar14 * -2 + 1" (binary_expression "pbVar9 + (uint)bVar14 * -2" identifier + (binary_expression "(uint)bVar14 * -2" (cast_expression "(uint)bVar14" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar10 = pbVar10 + (uint)bVar14 * -2 + 1;" (assignment_expression "pbVar10 = pbVar10 + (uint)bVar14 * -2 + 1" identifier = (binary_expression "pbVar10 + (uint)bVar14 * -2 + 1" (binary_expression "pbVar10 + (uint)bVar14 * -2" identifier + (binary_expression "(uint)bVar14 * -2" (cast_expression "(uint)bVar14" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar13)" ( identifier )) ;) (if_statement "if ((!bVar11 && !bVar13) == bVar11) {\n            return 1;\n          }" if (parenthesized_expression "((!bVar11 && !bVar13) == bVar11)" ( (binary_expression "(!bVar11 && !bVar13) == bVar11" (parenthesized_expression "(!bVar11 && !bVar13)" ( (binary_expression "!bVar11 && !bVar13" (unary_expression "!bVar11" ! identifier) && (unary_expression "!bVar13" ! identifier)) )) == identifier) )) (compound_statement "{\n            return 1;\n          }" { (return_statement "return 1;" return number_literal ;) })) }))) (expression_statement "emit_note_gnu_build_id = (char *)xstrdup(pbVar4);" (assignment_expression "emit_note_gnu_build_id = (char *)xstrdup(pbVar4)" identifier = (cast_expression "(char *)xstrdup(pbVar4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xstrdup(pbVar4)" identifier (argument_list "(pbVar4)" ( identifier ))))) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (optc != 0x199) {\n        return 0;\n      }" if (parenthesized_expression "(optc != 0x199)" ( (binary_expression "optc != 0x199" identifier != number_literal) )) (compound_statement "{\n        return 0;\n      }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "pcVar7 = *(char **)PTR_optarg_001befe4;" (assignment_expression "pcVar7 = *(char **)PTR_optarg_001befe4" identifier = (pointer_expression "*(char **)PTR_optarg_001befe4" * (cast_expression "(char **)PTR_optarg_001befe4" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "iVar8 = strcasecmp(pcVar7,"none");" (assignment_expression "iVar8 = strcasecmp(pcVar7,"none")" identifier = (call_expression "strcasecmp(pcVar7,"none")" identifier (argument_list "(pcVar7,"none")" ( identifier , (string_literal ""none"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n        link_info.compress_debug = COMPRESS_DEBUG_NONE;\n        return 1;\n      }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n        link_info.compress_debug = COMPRESS_DEBUG_NONE;\n        return 1;\n      }" { (expression_statement "link_info.compress_debug = COMPRESS_DEBUG_NONE;" (assignment_expression "link_info.compress_debug = COMPRESS_DEBUG_NONE" (field_expression "link_info.compress_debug" identifier . field_identifier) = identifier) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcasecmp(pcVar7,"zlib");" (assignment_expression "iVar8 = strcasecmp(pcVar7,"zlib")" identifier = (call_expression "strcasecmp(pcVar7,"zlib")" identifier (argument_list "(pcVar7,"zlib")" ( identifier , (string_literal ""zlib"" " string_content ") )))) ;) (if_statement "if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar7,"zlib-gnu");\n        if (iVar8 == 0) {\n          link_info.compress_debug = COMPRESS_DEBUG_GNU_ZLIB;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar7,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar5 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (compound_statement "{\n        iVar8 = strcasecmp(pcVar7,"zlib-gnu");\n        if (iVar8 == 0) {\n          link_info.compress_debug = COMPRESS_DEBUG_GNU_ZLIB;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar7,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar5 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }" { (expression_statement "iVar8 = strcasecmp(pcVar7,"zlib-gnu");" (assignment_expression "iVar8 = strcasecmp(pcVar7,"zlib-gnu")" identifier = (call_expression "strcasecmp(pcVar7,"zlib-gnu")" identifier (argument_list "(pcVar7,"zlib-gnu")" ( identifier , (string_literal ""zlib-gnu"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          link_info.compress_debug = COMPRESS_DEBUG_GNU_ZLIB;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          link_info.compress_debug = COMPRESS_DEBUG_GNU_ZLIB;\n          return 1;\n        }" { (expression_statement "link_info.compress_debug = COMPRESS_DEBUG_GNU_ZLIB;" (assignment_expression "link_info.compress_debug = COMPRESS_DEBUG_GNU_ZLIB" (field_expression "link_info.compress_debug" identifier . field_identifier) = identifier) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcasecmp(pcVar7,"zlib-gabi");" (assignment_expression "iVar8 = strcasecmp(pcVar7,"zlib-gabi")" identifier = (call_expression "strcasecmp(pcVar7,"zlib-gabi")" identifier (argument_list "(pcVar7,"zlib-gabi")" ( identifier , (string_literal ""zlib-gabi"" " string_content ") )))) ;) (if_statement "if (iVar8 != 0) {\n          pcVar5 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (compound_statement "{\n          pcVar5 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }" { (expression_statement "pcVar5 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";" (assignment_expression "pcVar5 = "%F%P: invalid --compress-debug-sections option: `%s\'\n"" identifier = (string_literal ""%F%P: invalid --compress-debug-sections option: `%s\'\n"" " string_content escape_sequence escape_sequence ")) ;) (goto_statement "goto LAB_0004f9a8;" goto statement_identifier ;) })) })) (expression_statement "link_info.compress_debug = COMPRESS_DEBUG_GABI_ZLIB;" (assignment_expression "link_info.compress_debug = COMPRESS_DEBUG_GABI_ZLIB" (field_expression "link_info.compress_debug" identifier . field_identifier) = identifier) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (optc == 0x14d) {\n      params.pic_fixup = -1;\n      return 1;\n    }" if (parenthesized_expression "(optc == 0x14d)" ( (binary_expression "optc == 0x14d" identifier == number_literal) )) (compound_statement "{\n      params.pic_fixup = -1;\n      return 1;\n    }" { (expression_statement "params.pic_fixup = -1;" (assignment_expression "params.pic_fixup = -1" (field_expression "params.pic_fixup" identifier . field_identifier) = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (0x14d < optc) {\n      if (optc == 400) {\n        link_info._4_4_ = link_info._4_4_ & 0xfffffeff;\n        return 1;\n      }\n      if (optc < 0x191) {\n        if (optc == 0x14e) {\n          params.vle_reloc_fixup = 1;\n          return 1;\n        }\n        return 0;\n      }\n      link_info._4_4_ = link_info._4_4_ | 0x100;\n      return 1;\n    }" if (parenthesized_expression "(0x14d < optc)" ( (binary_expression "0x14d < optc" number_literal < identifier) )) (compound_statement "{\n      if (optc == 400) {\n        link_info._4_4_ = link_info._4_4_ & 0xfffffeff;\n        return 1;\n      }\n      if (optc < 0x191) {\n        if (optc == 0x14e) {\n          params.vle_reloc_fixup = 1;\n          return 1;\n        }\n        return 0;\n      }\n      link_info._4_4_ = link_info._4_4_ | 0x100;\n      return 1;\n    }" { (if_statement "if (optc == 400) {\n        link_info._4_4_ = link_info._4_4_ & 0xfffffeff;\n        return 1;\n      }" if (parenthesized_expression "(optc == 400)" ( (binary_expression "optc == 400" identifier == number_literal) )) (compound_statement "{\n        link_info._4_4_ = link_info._4_4_ & 0xfffffeff;\n        return 1;\n      }" { (expression_statement "link_info._4_4_ = link_info._4_4_ & 0xfffffeff;" (assignment_expression "link_info._4_4_ = link_info._4_4_ & 0xfffffeff" (field_expression "link_info._4_4_" identifier . field_identifier) = (binary_expression "link_info._4_4_ & 0xfffffeff" (field_expression "link_info._4_4_" identifier . field_identifier) & number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (optc < 0x191) {\n        if (optc == 0x14e) {\n          params.vle_reloc_fixup = 1;\n          return 1;\n        }\n        return 0;\n      }" if (parenthesized_expression "(optc < 0x191)" ( (binary_expression "optc < 0x191" identifier < number_literal) )) (compound_statement "{\n        if (optc == 0x14e) {\n          params.vle_reloc_fixup = 1;\n          return 1;\n        }\n        return 0;\n      }" { (if_statement "if (optc == 0x14e) {\n          params.vle_reloc_fixup = 1;\n          return 1;\n        }" if (parenthesized_expression "(optc == 0x14e)" ( (binary_expression "optc == 0x14e" identifier == number_literal) )) (compound_statement "{\n          params.vle_reloc_fixup = 1;\n          return 1;\n        }" { (expression_statement "params.vle_reloc_fixup = 1;" (assignment_expression "params.vle_reloc_fixup = 1" (field_expression "params.vle_reloc_fixup" identifier . field_identifier) = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (return_statement "return 0;" return number_literal ;) })) (expression_statement "link_info._4_4_ = link_info._4_4_ | 0x100;" (assignment_expression "link_info._4_4_ = link_info._4_4_ | 0x100" (field_expression "link_info._4_4_" identifier . field_identifier) = (binary_expression "link_info._4_4_ | 0x100" (field_expression "link_info._4_4_" identifier . field_identifier) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (optc != 0x14b) {\n      if (optc == 0x14c) {\n        params.ppc476_workaround = 0;\n        return 1;\n      }\n      return 0;\n    }" if (parenthesized_expression "(optc != 0x14b)" ( (binary_expression "optc != 0x14b" identifier != number_literal) )) (compound_statement "{\n      if (optc == 0x14c) {\n        params.ppc476_workaround = 0;\n        return 1;\n      }\n      return 0;\n    }" { (if_statement "if (optc == 0x14c) {\n        params.ppc476_workaround = 0;\n        return 1;\n      }" if (parenthesized_expression "(optc == 0x14c)" ( (binary_expression "optc == 0x14c" identifier == number_literal) )) (compound_statement "{\n        params.ppc476_workaround = 0;\n        return 1;\n      }" { (expression_statement "params.ppc476_workaround = 0;" (assignment_expression "params.ppc476_workaround = 0" (field_expression "params.ppc476_workaround" identifier . field_identifier) = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (return_statement "return 0;" return number_literal ;) })) (expression_statement "params.ppc476_workaround = 1;" (assignment_expression "params.ppc476_workaround = 1" (field_expression "params.ppc476_workaround" identifier . field_identifier) = number_literal) ;) (if_statement "if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      params.ppc476_workaround = 1;\n      return 1;\n    }" if (parenthesized_expression "(*(char **)PTR_optarg_001befe4 == (char *)0x0)" ( (binary_expression "*(char **)PTR_optarg_001befe4 == (char *)0x0" (pointer_expression "*(char **)PTR_optarg_001befe4" * (cast_expression "(char **)PTR_optarg_001befe4" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      params.ppc476_workaround = 1;\n      return 1;\n    }" { (expression_statement "params.ppc476_workaround = 1;" (assignment_expression "params.ppc476_workaround = 1" (field_expression "params.ppc476_workaround" identifier . field_identifier) = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "params.pagesize._0_4_ = strtoul(*(char **)PTR_optarg_001befe4,&end,0);" (assignment_expression "params.pagesize._0_4_ = strtoul(*(char **)PTR_optarg_001befe4,&end,0)" (field_expression "params.pagesize._0_4_" (field_expression "params.pagesize" identifier . field_identifier) . field_identifier) = (call_expression "strtoul(*(char **)PTR_optarg_001befe4,&end,0)" identifier (argument_list "(*(char **)PTR_optarg_001befe4,&end,0)" ( (pointer_expression "*(char **)PTR_optarg_001befe4" * (cast_expression "(char **)PTR_optarg_001befe4" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) , (pointer_expression "&end" & identifier) , number_literal )))) ;) (expression_statement "params.pagesize._4_4_ = 0;" (assignment_expression "params.pagesize._4_4_ = 0" (field_expression "params.pagesize._4_4_" (field_expression "params.pagesize" identifier . field_identifier) . field_identifier) = number_literal) ;) (if_statement "if (((*end == '\0') &&\n        (iVar8 = ((ulong)params.pagesize != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < (ulong)params.pagesize - 1))) &&\n       (((ulong)params.pagesize - 1 & (ulong)params.pagesize) == 0)) {\n      params.pagesize._4_4_ = 0;\n      return 1;\n    }" if (parenthesized_expression "(((*end == '\0') &&\n        (iVar8 = ((ulong)params.pagesize != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < (ulong)params.pagesize - 1))) &&\n       (((ulong)params.pagesize - 1 & (ulong)params.pagesize) == 0))" ( (binary_expression "((*end == '\0') &&\n        (iVar8 = ((ulong)params.pagesize != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < (ulong)params.pagesize - 1))) &&\n       (((ulong)params.pagesize - 1 & (ulong)params.pagesize) == 0)" (parenthesized_expression "((*end == '\0') &&\n        (iVar8 = ((ulong)params.pagesize != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < (ulong)params.pagesize - 1)))" ( (binary_expression "(*end == '\0') &&\n        (iVar8 = ((ulong)params.pagesize != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < (ulong)params.pagesize - 1))" (parenthesized_expression "(*end == '\0')" ( (binary_expression "*end == '\0'" (pointer_expression "*end" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(iVar8 = ((ulong)params.pagesize != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < (ulong)params.pagesize - 1))" ( (comma_expression "iVar8 = ((ulong)params.pagesize != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < (ulong)params.pagesize - 1)" (assignment_expression "iVar8 = ((ulong)params.pagesize != 0) - 1" identifier = (binary_expression "((ulong)params.pagesize != 0) - 1" (parenthesized_expression "((ulong)params.pagesize != 0)" ( (binary_expression "(ulong)params.pagesize != 0" (cast_expression "(ulong)params.pagesize" ( (type_descriptor "ulong" type_identifier) ) (field_expression "params.pagesize" identifier . field_identifier)) != number_literal) )) - number_literal)) , (binary_expression "iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < (ulong)params.pagesize - 1)" (binary_expression "iVar8 != 0" identifier != number_literal) || (binary_expression "(uint)-iVar8 < (uint)(0xffe < (ulong)params.pagesize - 1)" (binary_expression "(uint)-iVar8" (parenthesized_expression "(uint)" ( identifier )) - identifier) < (call_expression "(uint)(0xffe < (ulong)params.pagesize - 1)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0xffe < (ulong)params.pagesize - 1)" ( (binary_expression "0xffe < (ulong)params.pagesize - 1" number_literal < (binary_expression "(ulong)params.pagesize - 1" (cast_expression "(ulong)params.pagesize" ( (type_descriptor "ulong" type_identifier) ) (field_expression "params.pagesize" identifier . field_identifier)) - number_literal)) )))))) ))) )) && (parenthesized_expression "(((ulong)params.pagesize - 1 & (ulong)params.pagesize) == 0)" ( (binary_expression "((ulong)params.pagesize - 1 & (ulong)params.pagesize) == 0" (parenthesized_expression "((ulong)params.pagesize - 1 & (ulong)params.pagesize)" ( (binary_expression "(ulong)params.pagesize - 1 & (ulong)params.pagesize" (binary_expression "(ulong)params.pagesize - 1" (cast_expression "(ulong)params.pagesize" ( (type_descriptor "ulong" type_identifier) ) (field_expression "params.pagesize" identifier . field_identifier)) - number_literal) & (cast_expression "(ulong)params.pagesize" ( (type_descriptor "ulong" type_identifier) ) (field_expression "params.pagesize" identifier . field_identifier))) )) == number_literal) ))) )) (compound_statement "{\n      params.pagesize._4_4_ = 0;\n      return 1;\n    }" { (expression_statement "params.pagesize._4_4_ = 0;" (assignment_expression "params.pagesize._4_4_ = 0" (field_expression "params.pagesize._4_4_" (field_expression "params.pagesize" identifier . field_identifier) . field_identifier) = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "pcVar7 = *(char **)puVar2;" (assignment_expression "pcVar7 = *(char **)puVar2" identifier = (pointer_expression "*(char **)puVar2" * (cast_expression "(char **)puVar2" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "pcVar5 = "%F%P: invalid pagesize `%s\'\n";" (assignment_expression "pcVar5 = "%F%P: invalid pagesize `%s\'\n"" identifier = (string_literal ""%F%P: invalid pagesize `%s\'\n"" " string_content escape_sequence escape_sequence ")) ;) }))) (labeled_statement "LAB_0004f9a8:\n  pcVar5 = (char *)dcgettext(0,pcVar5,5);" statement_identifier : (expression_statement "pcVar5 = (char *)dcgettext(0,pcVar5,5);" (assignment_expression "pcVar5 = (char *)dcgettext(0,pcVar5,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar5,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar5,5)" identifier (argument_list "(0,pcVar5,5)" ( number_literal , identifier , number_literal ))))) ;)) (expression_statement "einfo(pcVar5,pcVar7);" (call_expression "einfo(pcVar5,pcVar7)" identifier (argument_list "(pcVar5,pcVar7)" ( identifier , identifier ))) ;) (return_statement "return 1;" return number_literal ;) })))
(translation_unit "undefined4 FUN_0004f570(uint param_1)\n\n{\n  undefined *puVar1;\n  undefined1 uVar2;\n  byte *pbVar3;\n  char *pcVar4;\n  ulong uVar5;\n  undefined4 uVar6;\n  undefined4 uVar7;\n  int iVar8;\n  byte *pbVar9;\n  char *pcVar10;\n  byte *pbVar11;\n  bool bVar12;\n  bool bVar13;\n  bool bVar14;\n  byte bVar15;\n  char *local_20 [3];\n  undefined4 uStack_14;\n  \n  puVar1 = PTR_optarg_001befe4;\n  bVar15 = 0;\n  uStack_14 = 0x4f579;\n  if (param_1 == 0x14a) {\n    DAT_001bfd28 = 0;\n    return 1;\n  }\n  uVar2 = DAT_001c0e24;\n  if ((int)param_1 < 0x14b) {\n    if (param_1 == 0x142) {\n      DAT_001bfd2c = 1;\n      return 1;\n    }\n    if (0x142 < (int)param_1) {\n      if (param_1 == 0x146) {\n        DAT_001bfd24 = 0;\n        return 1;\n      }\n      if (0x146 < (int)param_1) {\n        if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }\n        if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }\n        DAT_001bfd28 = 1;\n        return 1;\n      }\n      if (param_1 == 0x144) {\n        DAT_001bfd20 = 1;\n        return 1;\n      }\n      if ((int)param_1 < 0x145) {\n        DAT_001bfd20 = 2;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        DAT_001bfd24 = 5;\n        return 1;\n      }\n      uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n      if ((*local_20[0] == '\0') && (uVar5 < 6)) {\n        DAT_001bfd24 = uVar5;\n        return 1;\n      }\n      uVar7 = *(undefined4 *)puVar1;\n      uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      FUN_00034d60(uVar6,uVar7);\n      DAT_001bfd24 = uVar5;\n      return 1;\n    }\n    if (param_1 == 0xc2) {\n      DAT_001c0b2c = 1;\n      DAT_001bfd2c = 1;\n      return 0;\n    }\n    if (0xc2 < (int)param_1) {\n      if (param_1 == 0x12e) {\n        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;\n        return 1;\n      }\n      if (param_1 != 0x141) {\n        if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      DAT_001c0b2c = 1;\n      return 1;\n    }\n    if (param_1 == 0x50) {\n      FUN_0004f470();\n      return 1;\n    }\n    bVar12 = param_1 < 0x7a;\n    bVar14 = param_1 == 0x7a;\n    if (!bVar14) {\n      return 0;\n    }\n    iVar8 = 5;\n    pbVar3 = *(byte **)PTR_optarg_001befe4;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)0x6ed7c;\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar11;\n      bVar14 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar14);\n    bVar13 = false;\n    bVar12 = (!bVar12 && !bVar14) == bVar12;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60;\n      return 1;\n    }\n    iVar8 = 7;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"undefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }\n    iVar8 = 8;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"muldefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar14 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar13 = false;\n    bVar12 = (!bVar14 && !bVar12) == bVar14;\n    if (bVar12) {\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x800;\n      return 1;\n    }\n    iVar8 = 0xe;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"max-page-size=";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0);\n      DAT_001c0f88 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)) {\n        DAT_001c0f88 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0xe);\n    }\n    else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar3;\n      pbVar11 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      } while (bVar12);\n      bVar13 = false;\n      bVar12 = (!bVar14 && !bVar12) == bVar14;\n      if (!bVar12) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }\n      DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);\n      DAT_001c0f90 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {\n        DAT_001c0f90 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid common page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0x11);\n    }\n  }\n  else {\n    if (param_1 == 0x192) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;\n      DAT_001c0e9c = DAT_001c0e9c | 4;\n      return 1;\n    }\n    if (0x192 < (int)param_1) {\n      if (param_1 == 0x196) {\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if ((int)param_1 < 0x197) {\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (param_1 == 0x198) {\n        FUN_0004f470();\n        return 1;\n      }\n      if ((int)param_1 < 0x198) {\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }\n      if (param_1 != 0x199) {\n        return 0;\n      }\n      pcVar10 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar10,"none");\n      if (iVar8 == 0) {\n        DAT_001c0e2c = 0;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar10,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      DAT_001c0e2c = 5;\n      return 1;\n    }\n    if (param_1 == 0x14d) {\n      DAT_001bfd3c = 0xffffffff;\n      return 1;\n    }\n    if (0x14d < (int)param_1) {\n      if (param_1 == 400) {\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }\n      if ((int)param_1 < 0x191) {\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x100;\n      return 1;\n    }\n    if (param_1 != 0x14b) {\n      if (param_1 == 0x14c) {\n        DAT_001bfd34 = 0;\n        return 1;\n      }\n      return 0;\n    }\n    DAT_001bfd34 = 1;\n    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      DAT_001bfd34 = 1;\n      return 1;\n    }\n    DAT_001bfd44 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n    DAT_001bfd48 = 0;\n    if (((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&\n       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)) {\n      DAT_001bfd48 = 0;\n      return 1;\n    }\n    pcVar10 = *(char **)puVar1;\n    pcVar4 = "%F%P: invalid pagesize `%s\'\n";\n  }\nLAB_0004f9a8:\n  uVar7 = dcgettext(0,pcVar4,5);\n  FUN_00034d60(uVar7,pcVar10);\n  return 1;\n}\n\n" (function_definition "undefined4 FUN_0004f570(uint param_1)\n\n{\n  undefined *puVar1;\n  undefined1 uVar2;\n  byte *pbVar3;\n  char *pcVar4;\n  ulong uVar5;\n  undefined4 uVar6;\n  undefined4 uVar7;\n  int iVar8;\n  byte *pbVar9;\n  char *pcVar10;\n  byte *pbVar11;\n  bool bVar12;\n  bool bVar13;\n  bool bVar14;\n  byte bVar15;\n  char *local_20 [3];\n  undefined4 uStack_14;\n  \n  puVar1 = PTR_optarg_001befe4;\n  bVar15 = 0;\n  uStack_14 = 0x4f579;\n  if (param_1 == 0x14a) {\n    DAT_001bfd28 = 0;\n    return 1;\n  }\n  uVar2 = DAT_001c0e24;\n  if ((int)param_1 < 0x14b) {\n    if (param_1 == 0x142) {\n      DAT_001bfd2c = 1;\n      return 1;\n    }\n    if (0x142 < (int)param_1) {\n      if (param_1 == 0x146) {\n        DAT_001bfd24 = 0;\n        return 1;\n      }\n      if (0x146 < (int)param_1) {\n        if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }\n        if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }\n        DAT_001bfd28 = 1;\n        return 1;\n      }\n      if (param_1 == 0x144) {\n        DAT_001bfd20 = 1;\n        return 1;\n      }\n      if ((int)param_1 < 0x145) {\n        DAT_001bfd20 = 2;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        DAT_001bfd24 = 5;\n        return 1;\n      }\n      uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n      if ((*local_20[0] == '\0') && (uVar5 < 6)) {\n        DAT_001bfd24 = uVar5;\n        return 1;\n      }\n      uVar7 = *(undefined4 *)puVar1;\n      uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      FUN_00034d60(uVar6,uVar7);\n      DAT_001bfd24 = uVar5;\n      return 1;\n    }\n    if (param_1 == 0xc2) {\n      DAT_001c0b2c = 1;\n      DAT_001bfd2c = 1;\n      return 0;\n    }\n    if (0xc2 < (int)param_1) {\n      if (param_1 == 0x12e) {\n        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;\n        return 1;\n      }\n      if (param_1 != 0x141) {\n        if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      DAT_001c0b2c = 1;\n      return 1;\n    }\n    if (param_1 == 0x50) {\n      FUN_0004f470();\n      return 1;\n    }\n    bVar12 = param_1 < 0x7a;\n    bVar14 = param_1 == 0x7a;\n    if (!bVar14) {\n      return 0;\n    }\n    iVar8 = 5;\n    pbVar3 = *(byte **)PTR_optarg_001befe4;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)0x6ed7c;\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar11;\n      bVar14 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar14);\n    bVar13 = false;\n    bVar12 = (!bVar12 && !bVar14) == bVar12;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60;\n      return 1;\n    }\n    iVar8 = 7;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"undefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }\n    iVar8 = 8;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"muldefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar14 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar13 = false;\n    bVar12 = (!bVar14 && !bVar12) == bVar14;\n    if (bVar12) {\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x800;\n      return 1;\n    }\n    iVar8 = 0xe;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"max-page-size=";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0);\n      DAT_001c0f88 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)) {\n        DAT_001c0f88 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0xe);\n    }\n    else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar3;\n      pbVar11 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      } while (bVar12);\n      bVar13 = false;\n      bVar12 = (!bVar14 && !bVar12) == bVar14;\n      if (!bVar12) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }\n      DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);\n      DAT_001c0f90 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {\n        DAT_001c0f90 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid common page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0x11);\n    }\n  }\n  else {\n    if (param_1 == 0x192) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;\n      DAT_001c0e9c = DAT_001c0e9c | 4;\n      return 1;\n    }\n    if (0x192 < (int)param_1) {\n      if (param_1 == 0x196) {\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if ((int)param_1 < 0x197) {\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (param_1 == 0x198) {\n        FUN_0004f470();\n        return 1;\n      }\n      if ((int)param_1 < 0x198) {\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }\n      if (param_1 != 0x199) {\n        return 0;\n      }\n      pcVar10 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar10,"none");\n      if (iVar8 == 0) {\n        DAT_001c0e2c = 0;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar10,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      DAT_001c0e2c = 5;\n      return 1;\n    }\n    if (param_1 == 0x14d) {\n      DAT_001bfd3c = 0xffffffff;\n      return 1;\n    }\n    if (0x14d < (int)param_1) {\n      if (param_1 == 400) {\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }\n      if ((int)param_1 < 0x191) {\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x100;\n      return 1;\n    }\n    if (param_1 != 0x14b) {\n      if (param_1 == 0x14c) {\n        DAT_001bfd34 = 0;\n        return 1;\n      }\n      return 0;\n    }\n    DAT_001bfd34 = 1;\n    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      DAT_001bfd34 = 1;\n      return 1;\n    }\n    DAT_001bfd44 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n    DAT_001bfd48 = 0;\n    if (((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&\n       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)) {\n      DAT_001bfd48 = 0;\n      return 1;\n    }\n    pcVar10 = *(char **)puVar1;\n    pcVar4 = "%F%P: invalid pagesize `%s\'\n";\n  }\nLAB_0004f9a8:\n  uVar7 = dcgettext(0,pcVar4,5);\n  FUN_00034d60(uVar7,pcVar10);\n  return 1;\n}" type_identifier (function_declarator "FUN_0004f570(uint param_1)" identifier (parameter_list "(uint param_1)" ( (parameter_declaration "uint param_1" type_identifier identifier) ))) (compound_statement "{\n  undefined *puVar1;\n  undefined1 uVar2;\n  byte *pbVar3;\n  char *pcVar4;\n  ulong uVar5;\n  undefined4 uVar6;\n  undefined4 uVar7;\n  int iVar8;\n  byte *pbVar9;\n  char *pcVar10;\n  byte *pbVar11;\n  bool bVar12;\n  bool bVar13;\n  bool bVar14;\n  byte bVar15;\n  char *local_20 [3];\n  undefined4 uStack_14;\n  \n  puVar1 = PTR_optarg_001befe4;\n  bVar15 = 0;\n  uStack_14 = 0x4f579;\n  if (param_1 == 0x14a) {\n    DAT_001bfd28 = 0;\n    return 1;\n  }\n  uVar2 = DAT_001c0e24;\n  if ((int)param_1 < 0x14b) {\n    if (param_1 == 0x142) {\n      DAT_001bfd2c = 1;\n      return 1;\n    }\n    if (0x142 < (int)param_1) {\n      if (param_1 == 0x146) {\n        DAT_001bfd24 = 0;\n        return 1;\n      }\n      if (0x146 < (int)param_1) {\n        if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }\n        if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }\n        DAT_001bfd28 = 1;\n        return 1;\n      }\n      if (param_1 == 0x144) {\n        DAT_001bfd20 = 1;\n        return 1;\n      }\n      if ((int)param_1 < 0x145) {\n        DAT_001bfd20 = 2;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        DAT_001bfd24 = 5;\n        return 1;\n      }\n      uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n      if ((*local_20[0] == '\0') && (uVar5 < 6)) {\n        DAT_001bfd24 = uVar5;\n        return 1;\n      }\n      uVar7 = *(undefined4 *)puVar1;\n      uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      FUN_00034d60(uVar6,uVar7);\n      DAT_001bfd24 = uVar5;\n      return 1;\n    }\n    if (param_1 == 0xc2) {\n      DAT_001c0b2c = 1;\n      DAT_001bfd2c = 1;\n      return 0;\n    }\n    if (0xc2 < (int)param_1) {\n      if (param_1 == 0x12e) {\n        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;\n        return 1;\n      }\n      if (param_1 != 0x141) {\n        if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      DAT_001c0b2c = 1;\n      return 1;\n    }\n    if (param_1 == 0x50) {\n      FUN_0004f470();\n      return 1;\n    }\n    bVar12 = param_1 < 0x7a;\n    bVar14 = param_1 == 0x7a;\n    if (!bVar14) {\n      return 0;\n    }\n    iVar8 = 5;\n    pbVar3 = *(byte **)PTR_optarg_001befe4;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)0x6ed7c;\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar11;\n      bVar14 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar14);\n    bVar13 = false;\n    bVar12 = (!bVar12 && !bVar14) == bVar12;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60;\n      return 1;\n    }\n    iVar8 = 7;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"undefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }\n    iVar8 = 8;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"muldefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar14 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar13 = false;\n    bVar12 = (!bVar14 && !bVar12) == bVar14;\n    if (bVar12) {\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x800;\n      return 1;\n    }\n    iVar8 = 0xe;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"max-page-size=";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0);\n      DAT_001c0f88 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)) {\n        DAT_001c0f88 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0xe);\n    }\n    else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar3;\n      pbVar11 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      } while (bVar12);\n      bVar13 = false;\n      bVar12 = (!bVar14 && !bVar12) == bVar14;\n      if (!bVar12) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }\n      DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);\n      DAT_001c0f90 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {\n        DAT_001c0f90 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid common page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0x11);\n    }\n  }\n  else {\n    if (param_1 == 0x192) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;\n      DAT_001c0e9c = DAT_001c0e9c | 4;\n      return 1;\n    }\n    if (0x192 < (int)param_1) {\n      if (param_1 == 0x196) {\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if ((int)param_1 < 0x197) {\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (param_1 == 0x198) {\n        FUN_0004f470();\n        return 1;\n      }\n      if ((int)param_1 < 0x198) {\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }\n      if (param_1 != 0x199) {\n        return 0;\n      }\n      pcVar10 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar10,"none");\n      if (iVar8 == 0) {\n        DAT_001c0e2c = 0;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar10,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      DAT_001c0e2c = 5;\n      return 1;\n    }\n    if (param_1 == 0x14d) {\n      DAT_001bfd3c = 0xffffffff;\n      return 1;\n    }\n    if (0x14d < (int)param_1) {\n      if (param_1 == 400) {\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }\n      if ((int)param_1 < 0x191) {\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x100;\n      return 1;\n    }\n    if (param_1 != 0x14b) {\n      if (param_1 == 0x14c) {\n        DAT_001bfd34 = 0;\n        return 1;\n      }\n      return 0;\n    }\n    DAT_001bfd34 = 1;\n    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      DAT_001bfd34 = 1;\n      return 1;\n    }\n    DAT_001bfd44 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n    DAT_001bfd48 = 0;\n    if (((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&\n       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)) {\n      DAT_001bfd48 = 0;\n      return 1;\n    }\n    pcVar10 = *(char **)puVar1;\n    pcVar4 = "%F%P: invalid pagesize `%s\'\n";\n  }\nLAB_0004f9a8:\n  uVar7 = dcgettext(0,pcVar4,5);\n  FUN_00034d60(uVar7,pcVar10);\n  return 1;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "undefined1 uVar2;" type_identifier identifier ;) (declaration "byte *pbVar3;" type_identifier (pointer_declarator "*pbVar3" * identifier) ;) (declaration "char *pcVar4;" primitive_type (pointer_declarator "*pcVar4" * identifier) ;) (declaration "ulong uVar5;" type_identifier identifier ;) (declaration "undefined4 uVar6;" type_identifier identifier ;) (declaration "undefined4 uVar7;" type_identifier identifier ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "byte *pbVar9;" type_identifier (pointer_declarator "*pbVar9" * identifier) ;) (declaration "char *pcVar10;" primitive_type (pointer_declarator "*pcVar10" * identifier) ;) (declaration "byte *pbVar11;" type_identifier (pointer_declarator "*pbVar11" * identifier) ;) (declaration "bool bVar12;" primitive_type identifier ;) (declaration "bool bVar13;" primitive_type identifier ;) (declaration "bool bVar14;" primitive_type identifier ;) (declaration "byte bVar15;" type_identifier identifier ;) (declaration "char *local_20 [3];" primitive_type (pointer_declarator "*local_20 [3]" * (array_declarator "local_20 [3]" identifier [ number_literal ])) ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "puVar1 = PTR_optarg_001befe4;" (assignment_expression "puVar1 = PTR_optarg_001befe4" identifier = identifier) ;) (expression_statement "bVar15 = 0;" (assignment_expression "bVar15 = 0" identifier = number_literal) ;) (expression_statement "uStack_14 = 0x4f579;" (assignment_expression "uStack_14 = 0x4f579" identifier = number_literal) ;) (if_statement "if (param_1 == 0x14a) {\n    DAT_001bfd28 = 0;\n    return 1;\n  }" if (parenthesized_expression "(param_1 == 0x14a)" ( (binary_expression "param_1 == 0x14a" identifier == number_literal) )) (compound_statement "{\n    DAT_001bfd28 = 0;\n    return 1;\n  }" { (expression_statement "DAT_001bfd28 = 0;" (assignment_expression "DAT_001bfd28 = 0" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "uVar2 = DAT_001c0e24;" (assignment_expression "uVar2 = DAT_001c0e24" identifier = identifier) ;) (if_statement "if ((int)param_1 < 0x14b) {\n    if (param_1 == 0x142) {\n      DAT_001bfd2c = 1;\n      return 1;\n    }\n    if (0x142 < (int)param_1) {\n      if (param_1 == 0x146) {\n        DAT_001bfd24 = 0;\n        return 1;\n      }\n      if (0x146 < (int)param_1) {\n        if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }\n        if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }\n        DAT_001bfd28 = 1;\n        return 1;\n      }\n      if (param_1 == 0x144) {\n        DAT_001bfd20 = 1;\n        return 1;\n      }\n      if ((int)param_1 < 0x145) {\n        DAT_001bfd20 = 2;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        DAT_001bfd24 = 5;\n        return 1;\n      }\n      uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n      if ((*local_20[0] == '\0') && (uVar5 < 6)) {\n        DAT_001bfd24 = uVar5;\n        return 1;\n      }\n      uVar7 = *(undefined4 *)puVar1;\n      uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      FUN_00034d60(uVar6,uVar7);\n      DAT_001bfd24 = uVar5;\n      return 1;\n    }\n    if (param_1 == 0xc2) {\n      DAT_001c0b2c = 1;\n      DAT_001bfd2c = 1;\n      return 0;\n    }\n    if (0xc2 < (int)param_1) {\n      if (param_1 == 0x12e) {\n        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;\n        return 1;\n      }\n      if (param_1 != 0x141) {\n        if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      DAT_001c0b2c = 1;\n      return 1;\n    }\n    if (param_1 == 0x50) {\n      FUN_0004f470();\n      return 1;\n    }\n    bVar12 = param_1 < 0x7a;\n    bVar14 = param_1 == 0x7a;\n    if (!bVar14) {\n      return 0;\n    }\n    iVar8 = 5;\n    pbVar3 = *(byte **)PTR_optarg_001befe4;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)0x6ed7c;\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar11;\n      bVar14 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar14);\n    bVar13 = false;\n    bVar12 = (!bVar12 && !bVar14) == bVar12;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60;\n      return 1;\n    }\n    iVar8 = 7;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"undefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }\n    iVar8 = 8;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"muldefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar14 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar13 = false;\n    bVar12 = (!bVar14 && !bVar12) == bVar14;\n    if (bVar12) {\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x800;\n      return 1;\n    }\n    iVar8 = 0xe;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"max-page-size=";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0);\n      DAT_001c0f88 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)) {\n        DAT_001c0f88 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0xe);\n    }\n    else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar3;\n      pbVar11 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      } while (bVar12);\n      bVar13 = false;\n      bVar12 = (!bVar14 && !bVar12) == bVar14;\n      if (!bVar12) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }\n      DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);\n      DAT_001c0f90 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {\n        DAT_001c0f90 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid common page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0x11);\n    }\n  }\n  else {\n    if (param_1 == 0x192) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;\n      DAT_001c0e9c = DAT_001c0e9c | 4;\n      return 1;\n    }\n    if (0x192 < (int)param_1) {\n      if (param_1 == 0x196) {\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if ((int)param_1 < 0x197) {\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (param_1 == 0x198) {\n        FUN_0004f470();\n        return 1;\n      }\n      if ((int)param_1 < 0x198) {\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }\n      if (param_1 != 0x199) {\n        return 0;\n      }\n      pcVar10 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar10,"none");\n      if (iVar8 == 0) {\n        DAT_001c0e2c = 0;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar10,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      DAT_001c0e2c = 5;\n      return 1;\n    }\n    if (param_1 == 0x14d) {\n      DAT_001bfd3c = 0xffffffff;\n      return 1;\n    }\n    if (0x14d < (int)param_1) {\n      if (param_1 == 400) {\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }\n      if ((int)param_1 < 0x191) {\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x100;\n      return 1;\n    }\n    if (param_1 != 0x14b) {\n      if (param_1 == 0x14c) {\n        DAT_001bfd34 = 0;\n        return 1;\n      }\n      return 0;\n    }\n    DAT_001bfd34 = 1;\n    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      DAT_001bfd34 = 1;\n      return 1;\n    }\n    DAT_001bfd44 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n    DAT_001bfd48 = 0;\n    if (((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&\n       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)) {\n      DAT_001bfd48 = 0;\n      return 1;\n    }\n    pcVar10 = *(char **)puVar1;\n    pcVar4 = "%F%P: invalid pagesize `%s\'\n";\n  }" if (parenthesized_expression "((int)param_1 < 0x14b)" ( (binary_expression "(int)param_1 < 0x14b" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n    if (param_1 == 0x142) {\n      DAT_001bfd2c = 1;\n      return 1;\n    }\n    if (0x142 < (int)param_1) {\n      if (param_1 == 0x146) {\n        DAT_001bfd24 = 0;\n        return 1;\n      }\n      if (0x146 < (int)param_1) {\n        if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }\n        if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }\n        DAT_001bfd28 = 1;\n        return 1;\n      }\n      if (param_1 == 0x144) {\n        DAT_001bfd20 = 1;\n        return 1;\n      }\n      if ((int)param_1 < 0x145) {\n        DAT_001bfd20 = 2;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        DAT_001bfd24 = 5;\n        return 1;\n      }\n      uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n      if ((*local_20[0] == '\0') && (uVar5 < 6)) {\n        DAT_001bfd24 = uVar5;\n        return 1;\n      }\n      uVar7 = *(undefined4 *)puVar1;\n      uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      FUN_00034d60(uVar6,uVar7);\n      DAT_001bfd24 = uVar5;\n      return 1;\n    }\n    if (param_1 == 0xc2) {\n      DAT_001c0b2c = 1;\n      DAT_001bfd2c = 1;\n      return 0;\n    }\n    if (0xc2 < (int)param_1) {\n      if (param_1 == 0x12e) {\n        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;\n        return 1;\n      }\n      if (param_1 != 0x141) {\n        if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      DAT_001c0b2c = 1;\n      return 1;\n    }\n    if (param_1 == 0x50) {\n      FUN_0004f470();\n      return 1;\n    }\n    bVar12 = param_1 < 0x7a;\n    bVar14 = param_1 == 0x7a;\n    if (!bVar14) {\n      return 0;\n    }\n    iVar8 = 5;\n    pbVar3 = *(byte **)PTR_optarg_001befe4;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)0x6ed7c;\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar11;\n      bVar14 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar14);\n    bVar13 = false;\n    bVar12 = (!bVar12 && !bVar14) == bVar12;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60;\n      return 1;\n    }\n    iVar8 = 7;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"undefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }\n    iVar8 = 8;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"muldefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar14 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar13 = false;\n    bVar12 = (!bVar14 && !bVar12) == bVar14;\n    if (bVar12) {\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x800;\n      return 1;\n    }\n    iVar8 = 0xe;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"max-page-size=";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0);\n      DAT_001c0f88 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)) {\n        DAT_001c0f88 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0xe);\n    }\n    else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar3;\n      pbVar11 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      } while (bVar12);\n      bVar13 = false;\n      bVar12 = (!bVar14 && !bVar12) == bVar14;\n      if (!bVar12) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }\n      DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);\n      DAT_001c0f90 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {\n        DAT_001c0f90 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid common page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0x11);\n    }\n  }" { (if_statement "if (param_1 == 0x142) {\n      DAT_001bfd2c = 1;\n      return 1;\n    }" if (parenthesized_expression "(param_1 == 0x142)" ( (binary_expression "param_1 == 0x142" identifier == number_literal) )) (compound_statement "{\n      DAT_001bfd2c = 1;\n      return 1;\n    }" { (expression_statement "DAT_001bfd2c = 1;" (assignment_expression "DAT_001bfd2c = 1" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (0x142 < (int)param_1) {\n      if (param_1 == 0x146) {\n        DAT_001bfd24 = 0;\n        return 1;\n      }\n      if (0x146 < (int)param_1) {\n        if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }\n        if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }\n        DAT_001bfd28 = 1;\n        return 1;\n      }\n      if (param_1 == 0x144) {\n        DAT_001bfd20 = 1;\n        return 1;\n      }\n      if ((int)param_1 < 0x145) {\n        DAT_001bfd20 = 2;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        DAT_001bfd24 = 5;\n        return 1;\n      }\n      uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n      if ((*local_20[0] == '\0') && (uVar5 < 6)) {\n        DAT_001bfd24 = uVar5;\n        return 1;\n      }\n      uVar7 = *(undefined4 *)puVar1;\n      uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      FUN_00034d60(uVar6,uVar7);\n      DAT_001bfd24 = uVar5;\n      return 1;\n    }" if (parenthesized_expression "(0x142 < (int)param_1)" ( (binary_expression "0x142 < (int)param_1" number_literal < (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n      if (param_1 == 0x146) {\n        DAT_001bfd24 = 0;\n        return 1;\n      }\n      if (0x146 < (int)param_1) {\n        if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }\n        if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }\n        DAT_001bfd28 = 1;\n        return 1;\n      }\n      if (param_1 == 0x144) {\n        DAT_001bfd20 = 1;\n        return 1;\n      }\n      if ((int)param_1 < 0x145) {\n        DAT_001bfd20 = 2;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        DAT_001bfd24 = 5;\n        return 1;\n      }\n      uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n      if ((*local_20[0] == '\0') && (uVar5 < 6)) {\n        DAT_001bfd24 = uVar5;\n        return 1;\n      }\n      uVar7 = *(undefined4 *)puVar1;\n      uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      FUN_00034d60(uVar6,uVar7);\n      DAT_001bfd24 = uVar5;\n      return 1;\n    }" { (if_statement "if (param_1 == 0x146) {\n        DAT_001bfd24 = 0;\n        return 1;\n      }" if (parenthesized_expression "(param_1 == 0x146)" ( (binary_expression "param_1 == 0x146" identifier == number_literal) )) (compound_statement "{\n        DAT_001bfd24 = 0;\n        return 1;\n      }" { (expression_statement "DAT_001bfd24 = 0;" (assignment_expression "DAT_001bfd24 = 0" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (0x146 < (int)param_1) {\n        if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }\n        if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }\n        DAT_001bfd28 = 1;\n        return 1;\n      }" if (parenthesized_expression "(0x146 < (int)param_1)" ( (binary_expression "0x146 < (int)param_1" number_literal < (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n        if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }\n        if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }\n        DAT_001bfd28 = 1;\n        return 1;\n      }" { (if_statement "if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }" if (parenthesized_expression "(param_1 == 0x148)" ( (binary_expression "param_1 == 0x148" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0b24 = 1;\n          return 1;\n        }" { (expression_statement "DAT_001c0b24 = 1;" (assignment_expression "DAT_001c0b24 = 1" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }" if (parenthesized_expression "((int)param_1 < 0x149)" ( (binary_expression "(int)param_1 < 0x149" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          DAT_001c0b28 = 1;\n          return 1;\n        }" { (expression_statement "DAT_001c0b28 = 1;" (assignment_expression "DAT_001c0b28 = 1" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "DAT_001bfd28 = 1;" (assignment_expression "DAT_001bfd28 = 1" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (param_1 == 0x144) {\n        DAT_001bfd20 = 1;\n        return 1;\n      }" if (parenthesized_expression "(param_1 == 0x144)" ( (binary_expression "param_1 == 0x144" identifier == number_literal) )) (compound_statement "{\n        DAT_001bfd20 = 1;\n        return 1;\n      }" { (expression_statement "DAT_001bfd20 = 1;" (assignment_expression "DAT_001bfd20 = 1" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if ((int)param_1 < 0x145) {\n        DAT_001bfd20 = 2;\n        return 1;\n      }" if (parenthesized_expression "((int)param_1 < 0x145)" ( (binary_expression "(int)param_1 < 0x145" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        DAT_001bfd20 = 2;\n        return 1;\n      }" { (expression_statement "DAT_001bfd20 = 2;" (assignment_expression "DAT_001bfd20 = 2" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        DAT_001bfd24 = 5;\n        return 1;\n      }" if (parenthesized_expression "(*(char **)PTR_optarg_001befe4 == (char *)0x0)" ( (binary_expression "*(char **)PTR_optarg_001befe4 == (char *)0x0" (pointer_expression "*(char **)PTR_optarg_001befe4" * (cast_expression "(char **)PTR_optarg_001befe4" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        DAT_001bfd24 = 5;\n        return 1;\n      }" { (expression_statement "DAT_001bfd24 = 5;" (assignment_expression "DAT_001bfd24 = 5" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);" (assignment_expression "uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0)" identifier = (call_expression "strtoul(*(char **)PTR_optarg_001befe4,local_20,0)" identifier (argument_list "(*(char **)PTR_optarg_001befe4,local_20,0)" ( (pointer_expression "*(char **)PTR_optarg_001befe4" * (cast_expression "(char **)PTR_optarg_001befe4" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) , identifier , number_literal )))) ;) (if_statement "if ((*local_20[0] == '\0') && (uVar5 < 6)) {\n        DAT_001bfd24 = uVar5;\n        return 1;\n      }" if (parenthesized_expression "((*local_20[0] == '\0') && (uVar5 < 6))" ( (binary_expression "(*local_20[0] == '\0') && (uVar5 < 6)" (parenthesized_expression "(*local_20[0] == '\0')" ( (binary_expression "*local_20[0] == '\0'" (pointer_expression "*local_20[0]" * (subscript_expression "local_20[0]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(uVar5 < 6)" ( (binary_expression "uVar5 < 6" identifier < number_literal) ))) )) (compound_statement "{\n        DAT_001bfd24 = uVar5;\n        return 1;\n      }" { (expression_statement "DAT_001bfd24 = uVar5;" (assignment_expression "DAT_001bfd24 = uVar5" identifier = identifier) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "uVar7 = *(undefined4 *)puVar1;" (assignment_expression "uVar7 = *(undefined4 *)puVar1" identifier = (pointer_expression "*(undefined4 *)puVar1" * (cast_expression "(undefined4 *)puVar1" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);" (assignment_expression "uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5)" identifier = (call_expression "dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5)" identifier (argument_list "(0,"%F%P: invalid --plt-align `%s\'\n",5)" ( number_literal , (string_literal ""%F%P: invalid --plt-align `%s\'\n"" " string_content escape_sequence escape_sequence ") , number_literal )))) ;) (expression_statement "FUN_00034d60(uVar6,uVar7);" (call_expression "FUN_00034d60(uVar6,uVar7)" identifier (argument_list "(uVar6,uVar7)" ( identifier , identifier ))) ;) (expression_statement "DAT_001bfd24 = uVar5;" (assignment_expression "DAT_001bfd24 = uVar5" identifier = identifier) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (param_1 == 0xc2) {\n      DAT_001c0b2c = 1;\n      DAT_001bfd2c = 1;\n      return 0;\n    }" if (parenthesized_expression "(param_1 == 0xc2)" ( (binary_expression "param_1 == 0xc2" identifier == number_literal) )) (compound_statement "{\n      DAT_001c0b2c = 1;\n      DAT_001bfd2c = 1;\n      return 0;\n    }" { (expression_statement "DAT_001c0b2c = 1;" (assignment_expression "DAT_001c0b2c = 1" identifier = number_literal) ;) (expression_statement "DAT_001bfd2c = 1;" (assignment_expression "DAT_001bfd2c = 1" identifier = number_literal) ;) (return_statement "return 0;" return number_literal ;) })) (if_statement "if (0xc2 < (int)param_1) {\n      if (param_1 == 0x12e) {\n        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;\n        return 1;\n      }\n      if (param_1 != 0x141) {\n        if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      DAT_001c0b2c = 1;\n      return 1;\n    }" if (parenthesized_expression "(0xc2 < (int)param_1)" ( (binary_expression "0xc2 < (int)param_1" number_literal < (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n      if (param_1 == 0x12e) {\n        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;\n        return 1;\n      }\n      if (param_1 != 0x141) {\n        if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      DAT_001c0b2c = 1;\n      return 1;\n    }" { (if_statement "if (param_1 == 0x12e) {\n        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;\n        return 1;\n      }" if (parenthesized_expression "(param_1 == 0x12e)" ( (binary_expression "param_1 == 0x12e" identifier == number_literal) )) (compound_statement "{\n        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;\n        return 1;\n      }" { (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 | 0x200;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 | 0x200" identifier = (binary_expression "_DAT_001c0e24 | 0x200" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (param_1 != 0x141) {\n        if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }" if (parenthesized_expression "(param_1 != 0x141)" ( (binary_expression "param_1 != 0x141" identifier != number_literal) )) (compound_statement "{\n        if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }" { (if_statement "if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }" if (parenthesized_expression "(param_1 == 0x12d)" ( (binary_expression "param_1 == 0x12d" identifier == number_literal) )) (compound_statement "{\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }" { (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff" identifier = (binary_expression "_DAT_001c0e24 & 0xfffffdff" identifier & number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (return_statement "return 0;" return number_literal ;) })) (expression_statement "DAT_001c0b2c = 1;" (assignment_expression "DAT_001c0b2c = 1" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (param_1 == 0x50) {\n      FUN_0004f470();\n      return 1;\n    }" if (parenthesized_expression "(param_1 == 0x50)" ( (binary_expression "param_1 == 0x50" identifier == number_literal) )) (compound_statement "{\n      FUN_0004f470();\n      return 1;\n    }" { (expression_statement "FUN_0004f470();" (call_expression "FUN_0004f470()" identifier (argument_list "()" ( ))) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "bVar12 = param_1 < 0x7a;" (assignment_expression "bVar12 = param_1 < 0x7a" identifier = (binary_expression "param_1 < 0x7a" identifier < number_literal)) ;) (expression_statement "bVar14 = param_1 == 0x7a;" (assignment_expression "bVar14 = param_1 == 0x7a" identifier = (binary_expression "param_1 == 0x7a" identifier == number_literal)) ;) (if_statement "if (!bVar14) {\n      return 0;\n    }" if (parenthesized_expression "(!bVar14)" ( (unary_expression "!bVar14" ! identifier) )) (compound_statement "{\n      return 0;\n    }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "iVar8 = 5;" (assignment_expression "iVar8 = 5" identifier = number_literal) ;) (expression_statement "pbVar3 = *(byte **)PTR_optarg_001befe4;" (assignment_expression "pbVar3 = *(byte **)PTR_optarg_001befe4" identifier = (pointer_expression "*(byte **)PTR_optarg_001befe4" * (cast_expression "(byte **)PTR_optarg_001befe4" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) (expression_statement "pbVar11 = (byte *)0x6ed7c;" (assignment_expression "pbVar11 = (byte *)0x6ed7c" identifier = (cast_expression "(byte *)0x6ed7c" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar11;\n      bVar14 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar14);" do (compound_statement "{\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar11;\n      bVar14 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar12 = *pbVar9 < *pbVar11;" (assignment_expression "bVar12 = *pbVar9 < *pbVar11" identifier = (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "bVar14 = *pbVar9 == *pbVar11;" (assignment_expression "bVar14 = *pbVar9 == *pbVar11" identifier = (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" identifier = (binary_expression "pbVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar14)" ( identifier )) ;) (expression_statement "bVar13 = false;" (assignment_expression "bVar13 = false" identifier = false) ;) (expression_statement "bVar12 = (!bVar12 && !bVar14) == bVar12;" (assignment_expression "bVar12 = (!bVar12 && !bVar14) == bVar12" identifier = (binary_expression "(!bVar12 && !bVar14) == bVar12" (parenthesized_expression "(!bVar12 && !bVar14)" ( (binary_expression "!bVar12 && !bVar14" (unary_expression "!bVar12" ! identifier) && (unary_expression "!bVar14" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60;\n      return 1;\n    }" if (parenthesized_expression "(bVar12)" ( identifier )) (compound_statement "{\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60;\n      return 1;\n    }" { (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) = (binary_expression "DAT_001c0e20._2_2_ | 0x60" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = 7;" (assignment_expression "iVar8 = 7" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) (expression_statement "pbVar11 = (byte *)"undefs";" (assignment_expression "pbVar11 = (byte *)"undefs"" identifier = (cast_expression "(byte *)"undefs"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal ""undefs"" " string_content "))) ;) (do_statement "do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);" do (compound_statement "{\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar13 = *pbVar9 < *pbVar11;" (assignment_expression "bVar13 = *pbVar9 < *pbVar11" identifier = (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "bVar12 = *pbVar9 == *pbVar11;" (assignment_expression "bVar12 = *pbVar9 == *pbVar11" identifier = (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" identifier = (binary_expression "pbVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar12)" ( identifier )) ;) (expression_statement "bVar14 = false;" (assignment_expression "bVar14 = false" identifier = false) ;) (expression_statement "bVar12 = (!bVar13 && !bVar12) == bVar13;" (assignment_expression "bVar12 = (!bVar13 && !bVar12) == bVar13" identifier = (binary_expression "(!bVar13 && !bVar12) == bVar13" (parenthesized_expression "(!bVar13 && !bVar12)" ( (binary_expression "!bVar13 && !bVar12" (unary_expression "!bVar13" ! identifier) && (unary_expression "!bVar12" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }" if (parenthesized_expression "(bVar12)" ( identifier )) (compound_statement "{\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }" { (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) = (binary_expression "DAT_001c0e20._2_2_ & 0xff9f | 0x20" (binary_expression "DAT_001c0e20._2_2_ & 0xff9f" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = 8;" (assignment_expression "iVar8 = 8" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) (expression_statement "pbVar11 = (byte *)"muldefs";" (assignment_expression "pbVar11 = (byte *)"muldefs"" identifier = (cast_expression "(byte *)"muldefs"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal ""muldefs"" " string_content "))) ;) (do_statement "do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar14 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);" do (compound_statement "{\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar14 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar14 = *pbVar9 < *pbVar11;" (assignment_expression "bVar14 = *pbVar9 < *pbVar11" identifier = (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "bVar12 = *pbVar9 == *pbVar11;" (assignment_expression "bVar12 = *pbVar9 == *pbVar11" identifier = (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" identifier = (binary_expression "pbVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar12)" ( identifier )) ;) (expression_statement "bVar13 = false;" (assignment_expression "bVar13 = false" identifier = false) ;) (expression_statement "bVar12 = (!bVar14 && !bVar12) == bVar14;" (assignment_expression "bVar12 = (!bVar14 && !bVar12) == bVar14" identifier = (binary_expression "(!bVar14 && !bVar12) == bVar14" (parenthesized_expression "(!bVar14 && !bVar12)" ( (binary_expression "!bVar14 && !bVar12" (unary_expression "!bVar14" ! identifier) && (unary_expression "!bVar12" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar12) {\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x800;\n      return 1;\n    }" if (parenthesized_expression "(bVar12)" ( identifier )) (compound_statement "{\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x800;\n      return 1;\n    }" { (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 | 0x800;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 | 0x800" identifier = (binary_expression "_DAT_001c0e24 | 0x800" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = 0xe;" (assignment_expression "iVar8 = 0xe" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) (expression_statement "pbVar11 = (byte *)"max-page-size=";" (assignment_expression "pbVar11 = (byte *)"max-page-size="" identifier = (cast_expression "(byte *)"max-page-size="" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal ""max-page-size="" " string_content "))) ;) (do_statement "do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);" do (compound_statement "{\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar13 = *pbVar9 < *pbVar11;" (assignment_expression "bVar13 = *pbVar9 < *pbVar11" identifier = (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "bVar12 = *pbVar9 == *pbVar11;" (assignment_expression "bVar12 = *pbVar9 == *pbVar11" identifier = (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" identifier = (binary_expression "pbVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar12)" ( identifier )) ;) (expression_statement "bVar14 = false;" (assignment_expression "bVar14 = false" identifier = false) ;) (expression_statement "bVar12 = (!bVar13 && !bVar12) == bVar13;" (assignment_expression "bVar12 = (!bVar13 && !bVar12) == bVar13" identifier = (binary_expression "(!bVar13 && !bVar12) == bVar13" (parenthesized_expression "(!bVar13 && !bVar12)" ( (binary_expression "!bVar13 && !bVar12" (unary_expression "!bVar13" ! identifier) && (unary_expression "!bVar12" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar12) {\n      DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0);\n      DAT_001c0f88 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)) {\n        DAT_001c0f88 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0xe);\n    }\n    else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar3;\n      pbVar11 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      } while (bVar12);\n      bVar13 = false;\n      bVar12 = (!bVar14 && !bVar12) == bVar14;\n      if (!bVar12) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }\n      DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);\n      DAT_001c0f90 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {\n        DAT_001c0f90 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid common page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0x11);\n    }" if (parenthesized_expression "(bVar12)" ( identifier )) (compound_statement "{\n      DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0);\n      DAT_001c0f88 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)) {\n        DAT_001c0f88 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0xe);\n    }" { (expression_statement "DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0);" (assignment_expression "DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0)" identifier = (call_expression "strtoul((char *)(pbVar3 + 0xe),local_20,0)" identifier (argument_list "((char *)(pbVar3 + 0xe),local_20,0)" ( (cast_expression "(char *)(pbVar3 + 0xe)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar3 + 0xe)" ( (binary_expression "pbVar3 + 0xe" identifier + number_literal) ))) , identifier , number_literal )))) ;) (expression_statement "DAT_001c0f88 = 0;" (assignment_expression "DAT_001c0f88 = 0" identifier = number_literal) ;) (if_statement "if ((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)) {\n        DAT_001c0f88 = 0;\n        return 1;\n      }" if (parenthesized_expression "((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0))" ( (binary_expression "(*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)" (parenthesized_expression "(*local_20[0] == '\0')" ( (binary_expression "*local_20[0] == '\0'" (pointer_expression "*local_20[0]" * (subscript_expression "local_20[0]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)" ( (binary_expression "(DAT_001c0f84 & DAT_001c0f84 - 1) == 0" (parenthesized_expression "(DAT_001c0f84 & DAT_001c0f84 - 1)" ( (binary_expression "DAT_001c0f84 & DAT_001c0f84 - 1" identifier & (binary_expression "DAT_001c0f84 - 1" identifier - number_literal)) )) == number_literal) ))) )) (compound_statement "{\n        DAT_001c0f88 = 0;\n        return 1;\n      }" { (expression_statement "DAT_001c0f88 = 0;" (assignment_expression "DAT_001c0f88 = 0" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "pcVar4 = "%F%P: invalid maximum page size `%s\'\n";" (assignment_expression "pcVar4 = "%F%P: invalid maximum page size `%s\'\n"" identifier = (string_literal ""%F%P: invalid maximum page size `%s\'\n"" " string_content escape_sequence escape_sequence ")) ;) (expression_statement "pcVar10 = (char *)(*(int *)puVar1 + 0xe);" (assignment_expression "pcVar10 = (char *)(*(int *)puVar1 + 0xe)" identifier = (cast_expression "(char *)(*(int *)puVar1 + 0xe)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)puVar1 + 0xe)" ( (binary_expression "*(int *)puVar1 + 0xe" (pointer_expression "*(int *)puVar1" * (cast_expression "(int *)puVar1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) ;) }) (else_clause "else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar3;\n      pbVar11 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      } while (bVar12);\n      bVar13 = false;\n      bVar12 = (!bVar14 && !bVar12) == bVar14;\n      if (!bVar12) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }\n      DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);\n      DAT_001c0f90 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {\n        DAT_001c0f90 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid common page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0x11);\n    }" else (compound_statement "{\n      iVar8 = 0x11;\n      pbVar9 = pbVar3;\n      pbVar11 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      } while (bVar12);\n      bVar13 = false;\n      bVar12 = (!bVar14 && !bVar12) == bVar14;\n      if (!bVar12) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }\n      DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);\n      DAT_001c0f90 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {\n        DAT_001c0f90 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid common page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0x11);\n    }" { (expression_statement "iVar8 = 0x11;" (assignment_expression "iVar8 = 0x11" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) (expression_statement "pbVar11 = (byte *)"common-page-size=";" (assignment_expression "pbVar11 = (byte *)"common-page-size="" identifier = (cast_expression "(byte *)"common-page-size="" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal ""common-page-size="" " string_content "))) ;) (do_statement "do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      } while (bVar12);" do (compound_statement "{\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar14 = *pbVar9 < *pbVar11;" (assignment_expression "bVar14 = *pbVar9 < *pbVar11" identifier = (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "bVar12 = *pbVar9 == *pbVar11;" (assignment_expression "bVar12 = *pbVar9 == *pbVar11" identifier = (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" identifier = (binary_expression "pbVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar12)" ( identifier )) ;) (expression_statement "bVar13 = false;" (assignment_expression "bVar13 = false" identifier = false) ;) (expression_statement "bVar12 = (!bVar14 && !bVar12) == bVar14;" (assignment_expression "bVar12 = (!bVar14 && !bVar12) == bVar14" identifier = (binary_expression "(!bVar14 && !bVar12) == bVar14" (parenthesized_expression "(!bVar14 && !bVar12)" ( (binary_expression "!bVar14 && !bVar12" (unary_expression "!bVar14" ! identifier) && (unary_expression "!bVar12" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar12) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }" if (parenthesized_expression "(!bVar12)" ( (unary_expression "!bVar12" ! identifier) )) (compound_statement "{\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }" { (expression_statement "iVar8 = 0xb;" (assignment_expression "iVar8 = 0xb" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) (expression_statement "pbVar11 = (byte *)"stack-size=";" (assignment_expression "pbVar11 = (byte *)"stack-size="" identifier = (cast_expression "(byte *)"stack-size="" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal ""stack-size="" " string_content "))) ;) (do_statement "do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);" do (compound_statement "{\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar13 = *pbVar9 < *pbVar11;" (assignment_expression "bVar13 = *pbVar9 < *pbVar11" identifier = (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "bVar12 = *pbVar9 == *pbVar11;" (assignment_expression "bVar12 = *pbVar9 == *pbVar11" identifier = (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" identifier = (binary_expression "pbVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar12)" ( identifier )) ;) (expression_statement "bVar14 = false;" (assignment_expression "bVar14 = false" identifier = false) ;) (expression_statement "bVar12 = (!bVar13 && !bVar12) == bVar13;" (assignment_expression "bVar12 = (!bVar13 && !bVar12) == bVar13" identifier = (binary_expression "(!bVar13 && !bVar12) == bVar13" (parenthesized_expression "(!bVar13 && !bVar12)" ( (binary_expression "!bVar13 && !bVar12" (unary_expression "!bVar13" ! identifier) && (unary_expression "!bVar12" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }" if (parenthesized_expression "(bVar12)" ( identifier )) (compound_statement "{\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }" { (expression_statement "DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);" (assignment_expression "DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0)" identifier = (call_expression "strtoul((char *)(pbVar3 + 0xb),local_20,0)" identifier (argument_list "((char *)(pbVar3 + 0xb),local_20,0)" ( (cast_expression "(char *)(pbVar3 + 0xb)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar3 + 0xb)" ( (binary_expression "pbVar3 + 0xb" identifier + number_literal) ))) , identifier , number_literal )))) ;) (expression_statement "DAT_001c0e34 = 0;" (assignment_expression "DAT_001c0e34 = 0" identifier = number_literal) ;) (if_statement "if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }" if (parenthesized_expression "(*local_20[0] != '\0')" ( (binary_expression "*local_20[0] != '\0'" (pointer_expression "*local_20[0]" * (subscript_expression "local_20[0]" identifier [ number_literal ])) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }" { (expression_statement "iVar8 = *(int *)puVar1;" (assignment_expression "iVar8 = *(int *)puVar1" identifier = (pointer_expression "*(int *)puVar1" * (cast_expression "(int *)puVar1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);" (assignment_expression "uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb)" identifier = (call_expression "dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb)" identifier (argument_list "(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb)" ( number_literal , (string_literal ""%F%P: invalid stack size `%s\'\n"" " string_content escape_sequence escape_sequence ") , number_literal , (binary_expression "pbVar3 + 0xb" identifier + number_literal) )))) ;) (expression_statement "FUN_00034d60(uVar7,iVar8 + 0xb);" (call_expression "FUN_00034d60(uVar7,iVar8 + 0xb)" identifier (argument_list "(uVar7,iVar8 + 0xb)" ( identifier , (binary_expression "iVar8 + 0xb" identifier + number_literal) ))) ;) })) (if_statement "if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }" if (parenthesized_expression "(DAT_001c0e34 != 0 || DAT_001c0e30 != 0)" ( (binary_expression "DAT_001c0e34 != 0 || DAT_001c0e30 != 0" (binary_expression "DAT_001c0e34 != 0" identifier != number_literal) || (binary_expression "DAT_001c0e30 != 0" identifier != number_literal)) )) (compound_statement "{\n            return 1;\n          }" { (return_statement "return 1;" return number_literal ;) })) (expression_statement "DAT_001c0e30 = 0xffffffff;" (assignment_expression "DAT_001c0e30 = 0xffffffff" identifier = number_literal) ;) (expression_statement "DAT_001c0e34 = 0xffffffff;" (assignment_expression "DAT_001c0e34 = 0xffffffff" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = 10;" (assignment_expression "iVar8 = 10" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) (expression_statement "pbVar11 = (byte *)0xa55ed;" (assignment_expression "pbVar11 = (byte *)0xa55ed" identifier = (cast_expression "(byte *)0xa55ed" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);" do (compound_statement "{\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar14 = *pbVar9 < *pbVar11;" (assignment_expression "bVar14 = *pbVar9 < *pbVar11" identifier = (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "bVar12 = *pbVar9 == *pbVar11;" (assignment_expression "bVar12 = *pbVar9 == *pbVar11" identifier = (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" identifier = (binary_expression "pbVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar12)" ( identifier )) ;) (if_statement "if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }" if (parenthesized_expression "((!bVar14 && !bVar12) == bVar14)" ( (binary_expression "(!bVar14 && !bVar12) == bVar14" (parenthesized_expression "(!bVar14 && !bVar12)" ( (binary_expression "!bVar14 && !bVar12" (unary_expression "!bVar14" ! identifier) && (unary_expression "!bVar12" ! identifier)) )) == identifier) )) (compound_statement "{\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }" { (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000" identifier = (binary_expression "_DAT_001c0e24 & 0xfffe7fff | 0x8000" (binary_expression "_DAT_001c0e24 & 0xfffe7fff" identifier & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"noexecstack");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"noexecstack")" identifier = (call_expression "strcmp((char *)pbVar3,"noexecstack")" identifier (argument_list "((char *)pbVar3,"noexecstack")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""noexecstack"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }" { (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000" identifier = (binary_expression "_DAT_001c0e24 & 0xfffe7fff | 0x10000" (binary_expression "_DAT_001c0e24 & 0xfffe7fff" identifier & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"globalaudit");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"globalaudit")" identifier = (call_expression "strcmp((char *)pbVar3,"globalaudit")" identifier (argument_list "((char *)pbVar3,"globalaudit")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""globalaudit"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }" { (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 0x1000000;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 0x1000000" identifier = (binary_expression "DAT_001c0e9c | 0x1000000" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"global");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"global")" identifier = (call_expression "strcmp((char *)pbVar3,"global")" identifier (argument_list "((char *)pbVar3,"global")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""global"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }" { (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 2;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 2" identifier = (binary_expression "DAT_001c0e9c | 2" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"initfirst");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"initfirst")" identifier = (call_expression "strcmp((char *)pbVar3,"initfirst")" identifier (argument_list "((char *)pbVar3,"initfirst")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""initfirst"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }" { (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 0x20;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 0x20" identifier = (binary_expression "DAT_001c0e9c | 0x20" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"interpose");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"interpose")" identifier = (call_expression "strcmp((char *)pbVar3,"interpose")" identifier (argument_list "((char *)pbVar3,"interpose")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""interpose"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }" { (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 0x400;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 0x400" identifier = (binary_expression "DAT_001c0e9c | 0x400" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"loadfltr");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"loadfltr")" identifier = (call_expression "strcmp((char *)pbVar3,"loadfltr")" identifier (argument_list "((char *)pbVar3,"loadfltr")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""loadfltr"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }" { (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 0x10;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 0x10" identifier = (binary_expression "DAT_001c0e9c | 0x10" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"nodefaultlib");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"nodefaultlib")" identifier = (call_expression "strcmp((char *)pbVar3,"nodefaultlib")" identifier (argument_list "((char *)pbVar3,"nodefaultlib")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""nodefaultlib"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }" { (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 0x800;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 0x800" identifier = (binary_expression "DAT_001c0e9c | 0x800" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"nodelete");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"nodelete")" identifier = (call_expression "strcmp((char *)pbVar3,"nodelete")" identifier (argument_list "((char *)pbVar3,"nodelete")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""nodelete"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }" { (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 8;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 8" identifier = (binary_expression "DAT_001c0e9c | 8" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"nodlopen");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"nodlopen")" identifier = (call_expression "strcmp((char *)pbVar3,"nodlopen")" identifier (argument_list "((char *)pbVar3,"nodlopen")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""nodlopen"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }" { (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 0x40;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 0x40" identifier = (binary_expression "DAT_001c0e9c | 0x40" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"nodump");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"nodump")" identifier = (call_expression "strcmp((char *)pbVar3,"nodump")" identifier (argument_list "((char *)pbVar3,"nodump")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""nodump"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }" { (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 0x1000;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 0x1000" identifier = (binary_expression "DAT_001c0e9c | 0x1000" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"now");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"now")" identifier = (call_expression "strcmp((char *)pbVar3,"now")" identifier (argument_list "((char *)pbVar3,"now")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""now"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }" { (expression_statement "_DAT_001c0e94 = _DAT_001c0e94 | 8;" (assignment_expression "_DAT_001c0e94 = _DAT_001c0e94 | 8" identifier = (binary_expression "_DAT_001c0e94 | 8" identifier | number_literal)) ;) (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 1;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 1" identifier = (binary_expression "DAT_001c0e9c | 1" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"lazy");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"lazy")" identifier = (call_expression "strcmp((char *)pbVar3,"lazy")" identifier (argument_list "((char *)pbVar3,"lazy")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""lazy"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }" { (expression_statement "_DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;" (assignment_expression "_DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7" identifier = (binary_expression "_DAT_001c0e94 & 0xfffffff7" identifier & number_literal)) ;) (expression_statement "DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe" identifier = (binary_expression "DAT_001c0e9c & 0xfffffffe" identifier & number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"origin");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"origin")" identifier = (call_expression "strcmp((char *)pbVar3,"origin")" identifier (argument_list "((char *)pbVar3,"origin")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""origin"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }" { (expression_statement "_DAT_001c0e94 = _DAT_001c0e94 | 1;" (assignment_expression "_DAT_001c0e94 = _DAT_001c0e94 | 1" identifier = (binary_expression "_DAT_001c0e94 | 1" identifier | number_literal)) ;) (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 0x80;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 0x80" identifier = (binary_expression "DAT_001c0e9c | 0x80" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"combreloc");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"combreloc")" identifier = (call_expression "strcmp((char *)pbVar3,"combreloc")" identifier (argument_list "((char *)pbVar3,"combreloc")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""combreloc"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }" { (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 | 0x40;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 | 0x40" identifier = (binary_expression "_DAT_001c0e24 | 0x40" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"nocombreloc");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"nocombreloc")" identifier = (call_expression "strcmp((char *)pbVar3,"nocombreloc")" identifier (argument_list "((char *)pbVar3,"nocombreloc")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""nocombreloc"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }" { (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf" identifier = (binary_expression "_DAT_001c0e24 & 0xffffffbf" identifier & number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"nocopyreloc");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"nocopyreloc")" identifier = (call_expression "strcmp((char *)pbVar3,"nocopyreloc")" identifier (argument_list "((char *)pbVar3,"nocopyreloc")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""nocopyreloc"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }" { (expression_statement "DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;" (assignment_expression "DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8" (field_expression "DAT_001c0e20._0_1_" identifier . field_identifier) = (binary_expression "(byte)DAT_001c0e20 | 8" (cast_expression "(byte)DAT_001c0e20" ( (type_descriptor "byte" type_identifier) ) identifier) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"relro");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"relro")" identifier = (call_expression "strcmp((char *)pbVar3,"relro")" identifier (argument_list "((char *)pbVar3,"relro")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""relro"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }" { (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) = (binary_expression "DAT_001c0e20._2_2_ | 0x1000" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"norelro");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"norelro")" identifier = (call_expression "strcmp((char *)pbVar3,"norelro")" identifier (argument_list "((char *)pbVar3,"norelro")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""norelro"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }" { (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) = (binary_expression "DAT_001c0e20._2_2_ & 0xefff" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) & number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"separate-code");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"separate-code")" identifier = (call_expression "strcmp((char *)pbVar3,"separate-code")" identifier (argument_list "((char *)pbVar3,"separate-code")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""separate-code"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }" { (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) = (binary_expression "DAT_001c0e20._2_2_ | 0x2000" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"noseparate-code");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"noseparate-code")" identifier = (call_expression "strcmp((char *)pbVar3,"noseparate-code")" identifier (argument_list "((char *)pbVar3,"noseparate-code")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""noseparate-code"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }" { (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) = (binary_expression "DAT_001c0e20._2_2_ & 0xdfff" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) & number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"common");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"common")" identifier = (call_expression "strcmp((char *)pbVar3,"common")" identifier (argument_list "((char *)pbVar3,"common")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""common"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }" { (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) = (binary_expression "DAT_001c0e20._2_2_ & 0xfff9 | 2" (binary_expression "DAT_001c0e20._2_2_ & 0xfff9" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"nocommon");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"nocommon")" identifier = (call_expression "strcmp((char *)pbVar3,"nocommon")" identifier (argument_list "((char *)pbVar3,"nocommon")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""nocommon"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }" { (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) = (binary_expression "DAT_001c0e20._2_2_ & 0xfff9 | 4" (binary_expression "DAT_001c0e20._2_2_ & 0xfff9" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"text");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"text")" identifier = (call_expression "strcmp((char *)pbVar3,"text")" identifier (argument_list "((char *)pbVar3,"text")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""text"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }" { (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 | 2;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 | 2" identifier = (binary_expression "_DAT_001c0e24 | 2" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"notext");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"notext")" identifier = (call_expression "strcmp((char *)pbVar3,"notext")" identifier (argument_list "((char *)pbVar3,"notext")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""notext"" " string_content ") )))) ;) (if_statement "if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }" if (parenthesized_expression "((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0))" ( (binary_expression "(iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)" (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) || (parenthesized_expression "(iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)" ( (comma_expression "iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"textoff")" identifier = (call_expression "strcmp((char *)pbVar3,"textoff")" identifier (argument_list "((char *)pbVar3,"textoff")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""textoff"" " string_content ") )))) , (binary_expression "iVar8 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }" { (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd" identifier = (binary_expression "_DAT_001c0e24 & 0xfffffffd" identifier & number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak")" identifier = (call_expression "strcmp((char *)pbVar3,"dynamic-undefined-weak")" identifier (argument_list "((char *)pbVar3,"dynamic-undefined-weak")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""dynamic-undefined-weak"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e84 = 1;\n          return 1;\n        }" { (expression_statement "DAT_001c0e84 = 1;" (assignment_expression "DAT_001c0e84 = 1" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak")" identifier = (call_expression "strcmp((char *)pbVar3,"nodynamic-undefined-weak")" identifier (argument_list "((char *)pbVar3,"nodynamic-undefined-weak")" ( (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""nodynamic-undefined-weak"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e84 = 0;\n          return 1;\n        }" { (expression_statement "DAT_001c0e84 = 0;" (assignment_expression "DAT_001c0e84 = 0" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "pcVar10 = "%P: warning: -z %s ignored\n";" (assignment_expression "pcVar10 = "%P: warning: -z %s ignored\n"" identifier = (string_literal ""%P: warning: -z %s ignored\n"" " string_content escape_sequence ")) ;) (labeled_statement "LAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);" statement_identifier : (expression_statement "uVar7 = dcgettext(0,pcVar10,5);" (assignment_expression "uVar7 = dcgettext(0,pcVar10,5)" identifier = (call_expression "dcgettext(0,pcVar10,5)" identifier (argument_list "(0,pcVar10,5)" ( number_literal , identifier , number_literal )))) ;)) (expression_statement "FUN_00034d60(uVar7,pbVar3);" (call_expression "FUN_00034d60(uVar7,pbVar3)" identifier (argument_list "(uVar7,pbVar3)" ( identifier , identifier ))) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);" (assignment_expression "DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0)" identifier = (call_expression "strtoul((char *)(pbVar3 + 0x11),local_20,0)" identifier (argument_list "((char *)(pbVar3 + 0x11),local_20,0)" ( (cast_expression "(char *)(pbVar3 + 0x11)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar3 + 0x11)" ( (binary_expression "pbVar3 + 0x11" identifier + number_literal) ))) , identifier , number_literal )))) ;) (expression_statement "DAT_001c0f90 = 0;" (assignment_expression "DAT_001c0f90 = 0" identifier = number_literal) ;) (if_statement "if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {\n        DAT_001c0f90 = 0;\n        return 1;\n      }" if (parenthesized_expression "((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0))" ( (binary_expression "(*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)" (parenthesized_expression "(*local_20[0] == '\0')" ( (binary_expression "*local_20[0] == '\0'" (pointer_expression "*local_20[0]" * (subscript_expression "local_20[0]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)" ( (binary_expression "(DAT_001c0f8c & DAT_001c0f8c - 1) == 0" (parenthesized_expression "(DAT_001c0f8c & DAT_001c0f8c - 1)" ( (binary_expression "DAT_001c0f8c & DAT_001c0f8c - 1" identifier & (binary_expression "DAT_001c0f8c - 1" identifier - number_literal)) )) == number_literal) ))) )) (compound_statement "{\n        DAT_001c0f90 = 0;\n        return 1;\n      }" { (expression_statement "DAT_001c0f90 = 0;" (assignment_expression "DAT_001c0f90 = 0" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "pcVar4 = "%F%P: invalid common page size `%s\'\n";" (assignment_expression "pcVar4 = "%F%P: invalid common page size `%s\'\n"" identifier = (string_literal ""%F%P: invalid common page size `%s\'\n"" " string_content escape_sequence escape_sequence ")) ;) (expression_statement "pcVar10 = (char *)(*(int *)puVar1 + 0x11);" (assignment_expression "pcVar10 = (char *)(*(int *)puVar1 + 0x11)" identifier = (cast_expression "(char *)(*(int *)puVar1 + 0x11)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)puVar1 + 0x11)" ( (binary_expression "*(int *)puVar1 + 0x11" (pointer_expression "*(int *)puVar1" * (cast_expression "(int *)puVar1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) ;) }))) }) (else_clause "else {\n    if (param_1 == 0x192) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;\n      DAT_001c0e9c = DAT_001c0e9c | 4;\n      return 1;\n    }\n    if (0x192 < (int)param_1) {\n      if (param_1 == 0x196) {\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if ((int)param_1 < 0x197) {\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (param_1 == 0x198) {\n        FUN_0004f470();\n        return 1;\n      }\n      if ((int)param_1 < 0x198) {\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }\n      if (param_1 != 0x199) {\n        return 0;\n      }\n      pcVar10 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar10,"none");\n      if (iVar8 == 0) {\n        DAT_001c0e2c = 0;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar10,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      DAT_001c0e2c = 5;\n      return 1;\n    }\n    if (param_1 == 0x14d) {\n      DAT_001bfd3c = 0xffffffff;\n      return 1;\n    }\n    if (0x14d < (int)param_1) {\n      if (param_1 == 400) {\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }\n      if ((int)param_1 < 0x191) {\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x100;\n      return 1;\n    }\n    if (param_1 != 0x14b) {\n      if (param_1 == 0x14c) {\n        DAT_001bfd34 = 0;\n        return 1;\n      }\n      return 0;\n    }\n    DAT_001bfd34 = 1;\n    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      DAT_001bfd34 = 1;\n      return 1;\n    }\n    DAT_001bfd44 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n    DAT_001bfd48 = 0;\n    if (((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&\n       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)) {\n      DAT_001bfd48 = 0;\n      return 1;\n    }\n    pcVar10 = *(char **)puVar1;\n    pcVar4 = "%F%P: invalid pagesize `%s\'\n";\n  }" else (compound_statement "{\n    if (param_1 == 0x192) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;\n      DAT_001c0e9c = DAT_001c0e9c | 4;\n      return 1;\n    }\n    if (0x192 < (int)param_1) {\n      if (param_1 == 0x196) {\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if ((int)param_1 < 0x197) {\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (param_1 == 0x198) {\n        FUN_0004f470();\n        return 1;\n      }\n      if ((int)param_1 < 0x198) {\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }\n      if (param_1 != 0x199) {\n        return 0;\n      }\n      pcVar10 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar10,"none");\n      if (iVar8 == 0) {\n        DAT_001c0e2c = 0;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar10,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      DAT_001c0e2c = 5;\n      return 1;\n    }\n    if (param_1 == 0x14d) {\n      DAT_001bfd3c = 0xffffffff;\n      return 1;\n    }\n    if (0x14d < (int)param_1) {\n      if (param_1 == 400) {\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }\n      if ((int)param_1 < 0x191) {\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x100;\n      return 1;\n    }\n    if (param_1 != 0x14b) {\n      if (param_1 == 0x14c) {\n        DAT_001bfd34 = 0;\n        return 1;\n      }\n      return 0;\n    }\n    DAT_001bfd34 = 1;\n    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      DAT_001bfd34 = 1;\n      return 1;\n    }\n    DAT_001bfd44 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n    DAT_001bfd48 = 0;\n    if (((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&\n       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)) {\n      DAT_001bfd48 = 0;\n      return 1;\n    }\n    pcVar10 = *(char **)puVar1;\n    pcVar4 = "%F%P: invalid pagesize `%s\'\n";\n  }" { (if_statement "if (param_1 == 0x192) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;\n      DAT_001c0e9c = DAT_001c0e9c | 4;\n      return 1;\n    }" if (parenthesized_expression "(param_1 == 0x192)" ( (binary_expression "param_1 == 0x192" identifier == number_literal) )) (compound_statement "{\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;\n      DAT_001c0e9c = DAT_001c0e9c | 4;\n      return 1;\n    }" { (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) = (binary_expression "DAT_001c0e20._2_2_ | 0x1e0" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) | number_literal)) ;) (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 4;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 4" identifier = (binary_expression "DAT_001c0e9c | 4" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (0x192 < (int)param_1) {\n      if (param_1 == 0x196) {\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if ((int)param_1 < 0x197) {\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (param_1 == 0x198) {\n        FUN_0004f470();\n        return 1;\n      }\n      if ((int)param_1 < 0x198) {\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }\n      if (param_1 != 0x199) {\n        return 0;\n      }\n      pcVar10 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar10,"none");\n      if (iVar8 == 0) {\n        DAT_001c0e2c = 0;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar10,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      DAT_001c0e2c = 5;\n      return 1;\n    }" if (parenthesized_expression "(0x192 < (int)param_1)" ( (binary_expression "0x192 < (int)param_1" number_literal < (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n      if (param_1 == 0x196) {\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if ((int)param_1 < 0x197) {\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (param_1 == 0x198) {\n        FUN_0004f470();\n        return 1;\n      }\n      if ((int)param_1 < 0x198) {\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }\n      if (param_1 != 0x199) {\n        return 0;\n      }\n      pcVar10 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar10,"none");\n      if (iVar8 == 0) {\n        DAT_001c0e2c = 0;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar10,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      DAT_001c0e2c = 5;\n      return 1;\n    }" { (if_statement "if (param_1 == 0x196) {\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }" if (parenthesized_expression "(param_1 == 0x196)" ( (binary_expression "param_1 == 0x196" identifier == number_literal) )) (compound_statement "{\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }" { (expression_statement "pbVar3 = *(byte **)PTR_optarg_001befe4;" (assignment_expression "pbVar3 = *(byte **)PTR_optarg_001befe4" identifier = (pointer_expression "*(byte **)PTR_optarg_001befe4" * (cast_expression "(byte **)PTR_optarg_001befe4" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "iVar8 = 5;" (assignment_expression "iVar8 = 5" identifier = number_literal) ;) (expression_statement "bVar12 = false;" (assignment_expression "bVar12 = false" identifier = false) ;) (expression_statement "bVar14 = (_DAT_001c0e24 & 0xf3) == 0;" (assignment_expression "bVar14 = (_DAT_001c0e24 & 0xf3) == 0" identifier = (binary_expression "(_DAT_001c0e24 & 0xf3) == 0" (parenthesized_expression "(_DAT_001c0e24 & 0xf3)" ( (binary_expression "_DAT_001c0e24 & 0xf3" identifier & number_literal) )) == number_literal)) ;) (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3" identifier = (binary_expression "_DAT_001c0e24 & 0xfffffff3" identifier & number_literal)) ;) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) (expression_statement "pbVar11 = &DAT_000a55a5;" (assignment_expression "pbVar11 = &DAT_000a55a5" identifier = (pointer_expression "&DAT_000a55a5" & identifier)) ;) (do_statement "do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);" do (compound_statement "{\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar12 = *pbVar9 < *pbVar11;" (assignment_expression "bVar12 = *pbVar9 < *pbVar11" identifier = (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "bVar14 = *pbVar9 == *pbVar11;" (assignment_expression "bVar14 = *pbVar9 == *pbVar11" identifier = (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" identifier = (binary_expression "pbVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar14)" ( identifier )) ;) (expression_statement "bVar13 = false;" (assignment_expression "bVar13 = false" identifier = false) ;) (expression_statement "bVar12 = (!bVar12 && !bVar14) == bVar12;" (assignment_expression "bVar12 = (!bVar12 && !bVar14) == bVar12" identifier = (binary_expression "(!bVar12 && !bVar14) == bVar12" (parenthesized_expression "(!bVar12 && !bVar14)" ( (binary_expression "!bVar12 && !bVar14" (unary_expression "!bVar12" ! identifier) && (unary_expression "!bVar14" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }" if (parenthesized_expression "(bVar12)" ( identifier )) (compound_statement "{\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }" { (expression_statement "_DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;" (assignment_expression "_DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4" identifier = (binary_expression "CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4" (binary_expression "CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3" (call_expression "CONCAT31(_DAT_001c0e25,uVar2)" identifier (argument_list "(_DAT_001c0e25,uVar2)" ( identifier , identifier ))) & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) (expression_statement "pbVar11 = &DAT_000a5597;" (assignment_expression "pbVar11 = &DAT_000a5597" identifier = (pointer_expression "&DAT_000a5597" & identifier)) ;) (do_statement "do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);" do (compound_statement "{\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar13 = *pbVar9 < *pbVar11;" (assignment_expression "bVar13 = *pbVar9 < *pbVar11" identifier = (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "bVar12 = *pbVar9 == *pbVar11;" (assignment_expression "bVar12 = *pbVar9 == *pbVar11" identifier = (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" identifier = (binary_expression "pbVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar12)" ( identifier )) ;) (expression_statement "bVar14 = false;" (assignment_expression "bVar14 = false" identifier = false) ;) (expression_statement "bVar12 = (!bVar13 && !bVar12) == bVar13;" (assignment_expression "bVar12 = (!bVar13 && !bVar12) == bVar13" identifier = (binary_expression "(!bVar13 && !bVar12) == bVar13" (parenthesized_expression "(!bVar13 && !bVar12)" ( (binary_expression "!bVar13 && !bVar12" (unary_expression "!bVar13" ! identifier) && (unary_expression "!bVar12" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }" if (parenthesized_expression "(bVar12)" ( identifier )) (compound_statement "{\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }" { (expression_statement "_DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;" (assignment_expression "_DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8" identifier = (binary_expression "CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8" (binary_expression "CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3" (call_expression "CONCAT31(_DAT_001c0e25,uVar2)" identifier (argument_list "(_DAT_001c0e25,uVar2)" ( identifier , identifier ))) & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = 5;" (assignment_expression "iVar8 = 5" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) (expression_statement "pbVar11 = &DAT_000a55aa;" (assignment_expression "pbVar11 = &DAT_000a55aa" identifier = (pointer_expression "&DAT_000a55aa" & identifier)) ;) (do_statement "do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);" do (compound_statement "{\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar14 = *pbVar9 < *pbVar11;" (assignment_expression "bVar14 = *pbVar9 < *pbVar11" identifier = (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "bVar12 = *pbVar9 == *pbVar11;" (assignment_expression "bVar12 = *pbVar9 == *pbVar11" identifier = (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" identifier = (binary_expression "pbVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar12)" ( identifier )) ;) (if_statement "if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }" if (parenthesized_expression "((!bVar14 && !bVar12) == bVar14)" ( (binary_expression "(!bVar14 && !bVar12) == bVar14" (parenthesized_expression "(!bVar14 && !bVar12)" ( (binary_expression "!bVar14 && !bVar12" (unary_expression "!bVar14" ! identifier) && (unary_expression "!bVar12" ! identifier)) )) == identifier) )) (compound_statement "{\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }" { (expression_statement "_DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;" (assignment_expression "_DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc" identifier = (binary_expression "CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc" (binary_expression "CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3" (call_expression "CONCAT31(_DAT_001c0e25,uVar2)" identifier (argument_list "(_DAT_001c0e25,uVar2)" ( identifier , identifier ))) & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "pcVar10 = "%F%P: invalid hash style `%s\'\n";" (assignment_expression "pcVar10 = "%F%P: invalid hash style `%s\'\n"" identifier = (string_literal ""%F%P: invalid hash style `%s\'\n"" " string_content escape_sequence escape_sequence ")) ;) (goto_statement "goto LAB_0004fd61;" goto statement_identifier ;) })) (if_statement "if ((int)param_1 < 0x197) {\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }" if (parenthesized_expression "((int)param_1 < 0x197)" ( (binary_expression "(int)param_1 < 0x197" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }" { (if_statement "if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }" if (parenthesized_expression "(param_1 == 0x194)" ( (binary_expression "param_1 == 0x194" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }" { (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) = (binary_expression "DAT_001c0e20._2_2_ & 0x3fff" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) & number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }" if (parenthesized_expression "((int)param_1 < 0x195)" ( (binary_expression "(int)param_1 < 0x195" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }" { (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) = (binary_expression "DAT_001c0e20._2_2_ & 0x3fff | 0x4000" (binary_expression "DAT_001c0e20._2_2_ & 0x3fff" (field_expression "DAT_001c0e20._2_2_" identifier . field_identifier) & number_literal) | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);" (call_expression "FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4)" identifier (argument_list "(*(undefined4 *)PTR_optarg_001befe4)" ( (pointer_expression "*(undefined4 *)PTR_optarg_001befe4" * (cast_expression "(undefined4 *)PTR_optarg_001befe4" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ))) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (param_1 == 0x198) {\n        FUN_0004f470();\n        return 1;\n      }" if (parenthesized_expression "(param_1 == 0x198)" ( (binary_expression "param_1 == 0x198" identifier == number_literal) )) (compound_statement "{\n        FUN_0004f470();\n        return 1;\n      }" { (expression_statement "FUN_0004f470();" (call_expression "FUN_0004f470()" identifier (argument_list "()" ( ))) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if ((int)param_1 < 0x198) {\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }" if (parenthesized_expression "((int)param_1 < 0x198)" ( (binary_expression "(int)param_1 < 0x198" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }" { (if_statement "if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }" if (parenthesized_expression "(DAT_001c0aa4 != (void *)0x0)" ( (binary_expression "DAT_001c0aa4 != (void *)0x0" identifier != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }" { (expression_statement "free(DAT_001c0aa4);" (call_expression "free(DAT_001c0aa4)" identifier (argument_list "(DAT_001c0aa4)" ( identifier ))) ;) (expression_statement "DAT_001c0aa4 = (void *)0x0;" (assignment_expression "DAT_001c0aa4 = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (expression_statement "pbVar3 = *(byte **)PTR_optarg_001befe4;" (assignment_expression "pbVar3 = *(byte **)PTR_optarg_001befe4" identifier = (pointer_expression "*(byte **)PTR_optarg_001befe4" * (cast_expression "(byte **)PTR_optarg_001befe4" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "bVar12 = false;" (assignment_expression "bVar12 = false" identifier = false) ;) (expression_statement "bVar14 = pbVar3 == (byte *)0x0;" (assignment_expression "bVar14 = pbVar3 == (byte *)0x0" identifier = (binary_expression "pbVar3 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (if_statement "if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }" if (parenthesized_expression "(bVar14)" ( identifier )) (compound_statement "{\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }" { (expression_statement "pbVar3 = &DAT_000732c8;" (assignment_expression "pbVar3 = &DAT_000732c8" identifier = (pointer_expression "&DAT_000732c8" & identifier)) ;) (expression_statement "*(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;" (assignment_expression "*(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8" (pointer_expression "*(undefined1 **)PTR_optarg_001befe4" * (cast_expression "(undefined1 **)PTR_optarg_001befe4" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) = (pointer_expression "&DAT_000732c8" & identifier)) ;) }) (else_clause "else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }" else (compound_statement "{\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }" { (expression_statement "iVar8 = 5;" (assignment_expression "iVar8 = 5" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) (expression_statement "pbVar11 = (byte *)0x6ebed;" (assignment_expression "pbVar11 = (byte *)0x6ebed" identifier = (cast_expression "(byte *)0x6ebed" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);" do (compound_statement "{\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar12 = *pbVar9 < *pbVar11;" (assignment_expression "bVar12 = *pbVar9 < *pbVar11" identifier = (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "bVar14 = *pbVar9 == *pbVar11;" (assignment_expression "bVar14 = *pbVar9 == *pbVar11" identifier = (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1" identifier = (binary_expression "pbVar9 + (uint)bVar15 * -2 + 1" (binary_expression "pbVar9 + (uint)bVar15 * -2" identifier + (binary_expression "(uint)bVar15 * -2" (cast_expression "(uint)bVar15" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1" identifier = (binary_expression "pbVar11 + (uint)bVar15 * -2 + 1" (binary_expression "pbVar11 + (uint)bVar15 * -2" identifier + (binary_expression "(uint)bVar15 * -2" (cast_expression "(uint)bVar15" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar14)" ( identifier )) ;) (if_statement "if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }" if (parenthesized_expression "((!bVar12 && !bVar14) == bVar12)" ( (binary_expression "(!bVar12 && !bVar14) == bVar12" (parenthesized_expression "(!bVar12 && !bVar14)" ( (binary_expression "!bVar12 && !bVar14" (unary_expression "!bVar12" ! identifier) && (unary_expression "!bVar14" ! identifier)) )) == identifier) )) (compound_statement "{\n            return 1;\n          }" { (return_statement "return 1;" return number_literal ;) })) }))) (expression_statement "DAT_001c0aa4 = (void *)xstrdup(pbVar3);" (assignment_expression "DAT_001c0aa4 = (void *)xstrdup(pbVar3)" identifier = (cast_expression "(void *)xstrdup(pbVar3)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xstrdup(pbVar3)" identifier (argument_list "(pbVar3)" ( identifier ))))) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (param_1 != 0x199) {\n        return 0;\n      }" if (parenthesized_expression "(param_1 != 0x199)" ( (binary_expression "param_1 != 0x199" identifier != number_literal) )) (compound_statement "{\n        return 0;\n      }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "pcVar10 = *(char **)PTR_optarg_001befe4;" (assignment_expression "pcVar10 = *(char **)PTR_optarg_001befe4" identifier = (pointer_expression "*(char **)PTR_optarg_001befe4" * (cast_expression "(char **)PTR_optarg_001befe4" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "iVar8 = strcasecmp(pcVar10,"none");" (assignment_expression "iVar8 = strcasecmp(pcVar10,"none")" identifier = (call_expression "strcasecmp(pcVar10,"none")" identifier (argument_list "(pcVar10,"none")" ( identifier , (string_literal ""none"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n        DAT_001c0e2c = 0;\n        return 1;\n      }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n        DAT_001c0e2c = 0;\n        return 1;\n      }" { (expression_statement "DAT_001c0e2c = 0;" (assignment_expression "DAT_001c0e2c = 0" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcasecmp(pcVar10,"zlib");" (assignment_expression "iVar8 = strcasecmp(pcVar10,"zlib")" identifier = (call_expression "strcasecmp(pcVar10,"zlib")" identifier (argument_list "(pcVar10,"zlib")" ( identifier , (string_literal ""zlib"" " string_content ") )))) ;) (if_statement "if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (compound_statement "{\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }" { (expression_statement "iVar8 = strcasecmp(pcVar10,"zlib-gnu");" (assignment_expression "iVar8 = strcasecmp(pcVar10,"zlib-gnu")" identifier = (call_expression "strcasecmp(pcVar10,"zlib-gnu")" identifier (argument_list "(pcVar10,"zlib-gnu")" ( identifier , (string_literal ""zlib-gnu"" " string_content ") )))) ;) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          DAT_001c0e2c = 3;\n          return 1;\n        }" { (expression_statement "DAT_001c0e2c = 3;" (assignment_expression "DAT_001c0e2c = 3" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar8 = strcasecmp(pcVar10,"zlib-gabi");" (assignment_expression "iVar8 = strcasecmp(pcVar10,"zlib-gabi")" identifier = (call_expression "strcasecmp(pcVar10,"zlib-gabi")" identifier (argument_list "(pcVar10,"zlib-gabi")" ( identifier , (string_literal ""zlib-gabi"" " string_content ") )))) ;) (if_statement "if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (compound_statement "{\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }" { (expression_statement "pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";" (assignment_expression "pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n"" identifier = (string_literal ""%F%P: invalid --compress-debug-sections option: `%s\'\n"" " string_content escape_sequence escape_sequence ")) ;) (goto_statement "goto LAB_0004f9a8;" goto statement_identifier ;) })) })) (expression_statement "DAT_001c0e2c = 5;" (assignment_expression "DAT_001c0e2c = 5" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (param_1 == 0x14d) {\n      DAT_001bfd3c = 0xffffffff;\n      return 1;\n    }" if (parenthesized_expression "(param_1 == 0x14d)" ( (binary_expression "param_1 == 0x14d" identifier == number_literal) )) (compound_statement "{\n      DAT_001bfd3c = 0xffffffff;\n      return 1;\n    }" { (expression_statement "DAT_001bfd3c = 0xffffffff;" (assignment_expression "DAT_001bfd3c = 0xffffffff" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (0x14d < (int)param_1) {\n      if (param_1 == 400) {\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }\n      if ((int)param_1 < 0x191) {\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x100;\n      return 1;\n    }" if (parenthesized_expression "(0x14d < (int)param_1)" ( (binary_expression "0x14d < (int)param_1" number_literal < (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n      if (param_1 == 400) {\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }\n      if ((int)param_1 < 0x191) {\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x100;\n      return 1;\n    }" { (if_statement "if (param_1 == 400) {\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }" if (parenthesized_expression "(param_1 == 400)" ( (binary_expression "param_1 == 400" identifier == number_literal) )) (compound_statement "{\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }" { (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff" identifier = (binary_expression "_DAT_001c0e24 & 0xfffffeff" identifier & number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if ((int)param_1 < 0x191) {\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }" if (parenthesized_expression "((int)param_1 < 0x191)" ( (binary_expression "(int)param_1 < 0x191" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }" { (if_statement "if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }" if (parenthesized_expression "(param_1 == 0x14e)" ( (binary_expression "param_1 == 0x14e" identifier == number_literal) )) (compound_statement "{\n          DAT_001bfd40 = 1;\n          return 1;\n        }" { (expression_statement "DAT_001bfd40 = 1;" (assignment_expression "DAT_001bfd40 = 1" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (return_statement "return 0;" return number_literal ;) })) (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 | 0x100;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 | 0x100" identifier = (binary_expression "_DAT_001c0e24 | 0x100" identifier | number_literal)) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if (param_1 != 0x14b) {\n      if (param_1 == 0x14c) {\n        DAT_001bfd34 = 0;\n        return 1;\n      }\n      return 0;\n    }" if (parenthesized_expression "(param_1 != 0x14b)" ( (binary_expression "param_1 != 0x14b" identifier != number_literal) )) (compound_statement "{\n      if (param_1 == 0x14c) {\n        DAT_001bfd34 = 0;\n        return 1;\n      }\n      return 0;\n    }" { (if_statement "if (param_1 == 0x14c) {\n        DAT_001bfd34 = 0;\n        return 1;\n      }" if (parenthesized_expression "(param_1 == 0x14c)" ( (binary_expression "param_1 == 0x14c" identifier == number_literal) )) (compound_statement "{\n        DAT_001bfd34 = 0;\n        return 1;\n      }" { (expression_statement "DAT_001bfd34 = 0;" (assignment_expression "DAT_001bfd34 = 0" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (return_statement "return 0;" return number_literal ;) })) (expression_statement "DAT_001bfd34 = 1;" (assignment_expression "DAT_001bfd34 = 1" identifier = number_literal) ;) (if_statement "if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      DAT_001bfd34 = 1;\n      return 1;\n    }" if (parenthesized_expression "(*(char **)PTR_optarg_001befe4 == (char *)0x0)" ( (binary_expression "*(char **)PTR_optarg_001befe4 == (char *)0x0" (pointer_expression "*(char **)PTR_optarg_001befe4" * (cast_expression "(char **)PTR_optarg_001befe4" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      DAT_001bfd34 = 1;\n      return 1;\n    }" { (expression_statement "DAT_001bfd34 = 1;" (assignment_expression "DAT_001bfd34 = 1" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "DAT_001bfd44 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);" (assignment_expression "DAT_001bfd44 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0)" identifier = (call_expression "strtoul(*(char **)PTR_optarg_001befe4,local_20,0)" identifier (argument_list "(*(char **)PTR_optarg_001befe4,local_20,0)" ( (pointer_expression "*(char **)PTR_optarg_001befe4" * (cast_expression "(char **)PTR_optarg_001befe4" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) , identifier , number_literal )))) ;) (expression_statement "DAT_001bfd48 = 0;" (assignment_expression "DAT_001bfd48 = 0" identifier = number_literal) ;) (if_statement "if (((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&\n       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)) {\n      DAT_001bfd48 = 0;\n      return 1;\n    }" if (parenthesized_expression "(((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&\n       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0))" ( (binary_expression "((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&\n       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)" (parenthesized_expression "((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1)))" ( (binary_expression "(*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))" (parenthesized_expression "(*local_20[0] == '\0')" ( (binary_expression "*local_20[0] == '\0'" (pointer_expression "*local_20[0]" * (subscript_expression "local_20[0]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))" ( (comma_expression "iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1)" (assignment_expression "iVar8 = (DAT_001bfd44 != 0) - 1" identifier = (binary_expression "(DAT_001bfd44 != 0) - 1" (parenthesized_expression "(DAT_001bfd44 != 0)" ( (binary_expression "DAT_001bfd44 != 0" identifier != number_literal) )) - number_literal)) , (binary_expression "iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1)" (binary_expression "iVar8 != 0" identifier != number_literal) || (binary_expression "(uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1)" (binary_expression "(uint)-iVar8" (parenthesized_expression "(uint)" ( identifier )) - identifier) < (call_expression "(uint)(0xffe < DAT_001bfd44 - 1)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0xffe < DAT_001bfd44 - 1)" ( (binary_expression "0xffe < DAT_001bfd44 - 1" number_literal < (binary_expression "DAT_001bfd44 - 1" identifier - number_literal)) )))))) ))) )) && (parenthesized_expression "((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)" ( (binary_expression "(DAT_001bfd44 - 1 & DAT_001bfd44) == 0" (parenthesized_expression "(DAT_001bfd44 - 1 & DAT_001bfd44)" ( (binary_expression "DAT_001bfd44 - 1 & DAT_001bfd44" (binary_expression "DAT_001bfd44 - 1" identifier - number_literal) & identifier) )) == number_literal) ))) )) (compound_statement "{\n      DAT_001bfd48 = 0;\n      return 1;\n    }" { (expression_statement "DAT_001bfd48 = 0;" (assignment_expression "DAT_001bfd48 = 0" identifier = number_literal) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "pcVar10 = *(char **)puVar1;" (assignment_expression "pcVar10 = *(char **)puVar1" identifier = (pointer_expression "*(char **)puVar1" * (cast_expression "(char **)puVar1" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "pcVar4 = "%F%P: invalid pagesize `%s\'\n";" (assignment_expression "pcVar4 = "%F%P: invalid pagesize `%s\'\n"" identifier = (string_literal ""%F%P: invalid pagesize `%s\'\n"" " string_content escape_sequence escape_sequence ")) ;) }))) (labeled_statement "LAB_0004f9a8:\n  uVar7 = dcgettext(0,pcVar4,5);" statement_identifier : (expression_statement "uVar7 = dcgettext(0,pcVar4,5);" (assignment_expression "uVar7 = dcgettext(0,pcVar4,5)" identifier = (call_expression "dcgettext(0,pcVar4,5)" identifier (argument_list "(0,pcVar4,5)" ( number_literal , identifier , number_literal )))) ;)) (expression_statement "FUN_00034d60(uVar7,pcVar10);" (call_expression "FUN_00034d60(uVar7,pcVar10)" identifier (argument_list "(uVar7,pcVar10)" ( identifier , identifier ))) ;) (return_statement "return 1;" return number_literal ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (array_declarator IDENT [ LIT ])) ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (return_statement return LIT ;) })) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (return_statement return LIT ;) })) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (return_statement return LIT ;) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (return_statement return LIT ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (return_statement return LIT ;) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (return_statement return LIT ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) , IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (subscript_expression IDENT [ LIT ])) == (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression IDENT < LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (return_statement return LIT ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (return_statement return LIT ;) })) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (return_statement return 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 = (binary_expression IDENT & LIT)) ;) (return_statement return LIT ;) })) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (return_statement return LIT ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT < LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = (binary_expression (field_expression IDENT . field_identifier) | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = (binary_expression (binary_expression (field_expression IDENT . field_identifier) & LIT) | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))) , IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (subscript_expression IDENT [ LIT ])) == (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & (binary_expression IDENT - LIT)) )) == LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence escape_sequence ")) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) + LIT) )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))) , IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (subscript_expression IDENT [ LIT ])) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence escape_sequence ") , LIT , (binary_expression IDENT + LIT) )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT + LIT) ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) || (binary_expression IDENT != LIT)) )) (compound_statement { (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT & LIT) | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT & LIT) | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = (binary_expression (field_expression IDENT . field_identifier) | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = (binary_expression (field_expression IDENT . field_identifier) & LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = (binary_expression (field_expression IDENT . field_identifier) | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = (binary_expression (field_expression IDENT . field_identifier) & LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = (binary_expression (binary_expression (field_expression IDENT . field_identifier) & LIT) | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = (binary_expression (binary_expression (field_expression IDENT . field_identifier) & LIT) | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (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 ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) , (binary_expression IDENT == LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , IDENT , LIT )))) ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))) , IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (subscript_expression IDENT [ LIT ])) == (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & (binary_expression IDENT - LIT)) )) == LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence escape_sequence ")) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) + LIT) )))) ;) }))) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = (binary_expression (field_expression IDENT . field_identifier) | LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (return_statement return LIT ;) })) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (call_expression IDENT (argument_list ( IDENT , IDENT ))) & LIT) | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (call_expression IDENT (argument_list ( IDENT , IDENT ))) & LIT) | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (call_expression IDENT (argument_list ( IDENT , IDENT ))) & LIT) | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence escape_sequence ")) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = (binary_expression (field_expression IDENT . field_identifier) & LIT)) ;) (return_statement return LIT ;) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = (binary_expression (binary_expression (field_expression IDENT . field_identifier) & LIT) | LIT)) ;) (return_statement return LIT ;) })) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ))) ;) (return_statement return LIT ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (return_statement return LIT ;) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (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 ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) = (pointer_expression & IDENT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT) )) (compound_statement { (return_statement return LIT ;) })) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT ))))) ;) (return_statement return LIT ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (string_literal " string_content ") )))) ;) (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 ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence escape_sequence ")) ;) (goto_statement goto statement_identifier ;) })) })) (expression_statement (assignment_expression IDENT = LIT) ;) (return_statement return LIT ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (return_statement return LIT ;) })) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (return_statement return LIT ;) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (return_statement return LIT ;) })) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (return_statement return 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 = LIT) ;) (return_statement return LIT ;) })) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) , IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (subscript_expression IDENT [ LIT ])) == (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) - LIT)) , (binary_expression (binary_expression IDENT != LIT) || (binary_expression (binary_expression (parenthesized_expression ( IDENT )) - IDENT) < (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression LIT < (binary_expression IDENT - LIT)) )))))) ))) )) && (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT - LIT) & IDENT) )) == LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence escape_sequence ")) ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , IDENT , LIT )))) ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (return_statement return LIT ;) })))
(function_definition "undefined4 FUN_0004f570(uint param_1)\n\n{\n  undefined *puVar1;\n  undefined1 uVar2;\n  byte *pbVar3;\n  char *pcVar4;\n  ulong uVar5;\n  undefined4 uVar6;\n  undefined4 uVar7;\n  int iVar8;\n  byte *pbVar9;\n  char *pcVar10;\n  byte *pbVar11;\n  bool bVar12;\n  bool bVar13;\n  bool bVar14;\n  byte bVar15;\n  char *local_20 [3];\n  undefined4 uStack_14;\n  \n  puVar1 = PTR_optarg_001befe4;\n  bVar15 = 0;\n  uStack_14 = 0x4f579;\n  if (param_1 == 0x14a) {\n    DAT_001bfd28 = 0;\n    return 1;\n  }\n  uVar2 = DAT_001c0e24;\n  if ((int)param_1 < 0x14b) {\n    if (param_1 == 0x142) {\n      DAT_001bfd2c = 1;\n      return 1;\n    }\n    if (0x142 < (int)param_1) {\n      if (param_1 == 0x146) {\n        DAT_001bfd24 = 0;\n        return 1;\n      }\n      if (0x146 < (int)param_1) {\n        if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }\n        if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }\n        DAT_001bfd28 = 1;\n        return 1;\n      }\n      if (param_1 == 0x144) {\n        DAT_001bfd20 = 1;\n        return 1;\n      }\n      if ((int)param_1 < 0x145) {\n        DAT_001bfd20 = 2;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        DAT_001bfd24 = 5;\n        return 1;\n      }\n      uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n      if ((*local_20[0] == '\0') && (uVar5 < 6)) {\n        DAT_001bfd24 = uVar5;\n        return 1;\n      }\n      uVar7 = *(undefined4 *)puVar1;\n      uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      FUN_00034d60(uVar6,uVar7);\n      DAT_001bfd24 = uVar5;\n      return 1;\n    }\n    if (param_1 == 0xc2) {\n      DAT_001c0b2c = 1;\n      DAT_001bfd2c = 1;\n      return 0;\n    }\n    if (0xc2 < (int)param_1) {\n      if (param_1 == 0x12e) {\n        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;\n        return 1;\n      }\n      if (param_1 != 0x141) {\n        if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      DAT_001c0b2c = 1;\n      return 1;\n    }\n    if (param_1 == 0x50) {\n      FUN_0004f470();\n      return 1;\n    }\n    bVar12 = param_1 < 0x7a;\n    bVar14 = param_1 == 0x7a;\n    if (!bVar14) {\n      return 0;\n    }\n    iVar8 = 5;\n    pbVar3 = *(byte **)PTR_optarg_001befe4;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)0x6ed7c;\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar11;\n      bVar14 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar14);\n    bVar13 = false;\n    bVar12 = (!bVar12 && !bVar14) == bVar12;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60;\n      return 1;\n    }\n    iVar8 = 7;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"undefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }\n    iVar8 = 8;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"muldefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar14 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar13 = false;\n    bVar12 = (!bVar14 && !bVar12) == bVar14;\n    if (bVar12) {\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x800;\n      return 1;\n    }\n    iVar8 = 0xe;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"max-page-size=";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0);\n      DAT_001c0f88 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)) {\n        DAT_001c0f88 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0xe);\n    }\n    else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar3;\n      pbVar11 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      } while (bVar12);\n      bVar13 = false;\n      bVar12 = (!bVar14 && !bVar12) == bVar14;\n      if (!bVar12) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }\n      DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);\n      DAT_001c0f90 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {\n        DAT_001c0f90 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid common page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0x11);\n    }\n  }\n  else {\n    if (param_1 == 0x192) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;\n      DAT_001c0e9c = DAT_001c0e9c | 4;\n      return 1;\n    }\n    if (0x192 < (int)param_1) {\n      if (param_1 == 0x196) {\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if ((int)param_1 < 0x197) {\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (param_1 == 0x198) {\n        FUN_0004f470();\n        return 1;\n      }\n      if ((int)param_1 < 0x198) {\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }\n      if (param_1 != 0x199) {\n        return 0;\n      }\n      pcVar10 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar10,"none");\n      if (iVar8 == 0) {\n        DAT_001c0e2c = 0;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar10,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      DAT_001c0e2c = 5;\n      return 1;\n    }\n    if (param_1 == 0x14d) {\n      DAT_001bfd3c = 0xffffffff;\n      return 1;\n    }\n    if (0x14d < (int)param_1) {\n      if (param_1 == 400) {\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }\n      if ((int)param_1 < 0x191) {\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x100;\n      return 1;\n    }\n    if (param_1 != 0x14b) {\n      if (param_1 == 0x14c) {\n        DAT_001bfd34 = 0;\n        return 1;\n      }\n      return 0;\n    }\n    DAT_001bfd34 = 1;\n    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      DAT_001bfd34 = 1;\n      return 1;\n    }\n    DAT_001bfd44 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n    DAT_001bfd48 = 0;\n    if (((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&\n       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)) {\n      DAT_001bfd48 = 0;\n      return 1;\n    }\n    pcVar10 = *(char **)puVar1;\n    pcVar4 = "%F%P: invalid pagesize `%s\'\n";\n  }\nLAB_0004f9a8:\n  uVar7 = dcgettext(0,pcVar4,5);\n  FUN_00034d60(uVar7,pcVar10);\n  return 1;\n}" (type_identifier "undefined4") (function_declarator "FUN_0004f570(uint param_1)" (identifier "FUN_0004f570") (parameter_list "(uint param_1)" (( "(") (parameter_declaration "uint param_1" (type_identifier "uint") (identifier "param_1")) () ")"))) (compound_statement "{\n  undefined *puVar1;\n  undefined1 uVar2;\n  byte *pbVar3;\n  char *pcVar4;\n  ulong uVar5;\n  undefined4 uVar6;\n  undefined4 uVar7;\n  int iVar8;\n  byte *pbVar9;\n  char *pcVar10;\n  byte *pbVar11;\n  bool bVar12;\n  bool bVar13;\n  bool bVar14;\n  byte bVar15;\n  char *local_20 [3];\n  undefined4 uStack_14;\n  \n  puVar1 = PTR_optarg_001befe4;\n  bVar15 = 0;\n  uStack_14 = 0x4f579;\n  if (param_1 == 0x14a) {\n    DAT_001bfd28 = 0;\n    return 1;\n  }\n  uVar2 = DAT_001c0e24;\n  if ((int)param_1 < 0x14b) {\n    if (param_1 == 0x142) {\n      DAT_001bfd2c = 1;\n      return 1;\n    }\n    if (0x142 < (int)param_1) {\n      if (param_1 == 0x146) {\n        DAT_001bfd24 = 0;\n        return 1;\n      }\n      if (0x146 < (int)param_1) {\n        if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }\n        if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }\n        DAT_001bfd28 = 1;\n        return 1;\n      }\n      if (param_1 == 0x144) {\n        DAT_001bfd20 = 1;\n        return 1;\n      }\n      if ((int)param_1 < 0x145) {\n        DAT_001bfd20 = 2;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        DAT_001bfd24 = 5;\n        return 1;\n      }\n      uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n      if ((*local_20[0] == '\0') && (uVar5 < 6)) {\n        DAT_001bfd24 = uVar5;\n        return 1;\n      }\n      uVar7 = *(undefined4 *)puVar1;\n      uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      FUN_00034d60(uVar6,uVar7);\n      DAT_001bfd24 = uVar5;\n      return 1;\n    }\n    if (param_1 == 0xc2) {\n      DAT_001c0b2c = 1;\n      DAT_001bfd2c = 1;\n      return 0;\n    }\n    if (0xc2 < (int)param_1) {\n      if (param_1 == 0x12e) {\n        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;\n        return 1;\n      }\n      if (param_1 != 0x141) {\n        if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      DAT_001c0b2c = 1;\n      return 1;\n    }\n    if (param_1 == 0x50) {\n      FUN_0004f470();\n      return 1;\n    }\n    bVar12 = param_1 < 0x7a;\n    bVar14 = param_1 == 0x7a;\n    if (!bVar14) {\n      return 0;\n    }\n    iVar8 = 5;\n    pbVar3 = *(byte **)PTR_optarg_001befe4;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)0x6ed7c;\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar11;\n      bVar14 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar14);\n    bVar13 = false;\n    bVar12 = (!bVar12 && !bVar14) == bVar12;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60;\n      return 1;\n    }\n    iVar8 = 7;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"undefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }\n    iVar8 = 8;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"muldefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar14 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar13 = false;\n    bVar12 = (!bVar14 && !bVar12) == bVar14;\n    if (bVar12) {\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x800;\n      return 1;\n    }\n    iVar8 = 0xe;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"max-page-size=";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0);\n      DAT_001c0f88 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)) {\n        DAT_001c0f88 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0xe);\n    }\n    else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar3;\n      pbVar11 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      } while (bVar12);\n      bVar13 = false;\n      bVar12 = (!bVar14 && !bVar12) == bVar14;\n      if (!bVar12) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }\n      DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);\n      DAT_001c0f90 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {\n        DAT_001c0f90 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid common page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0x11);\n    }\n  }\n  else {\n    if (param_1 == 0x192) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;\n      DAT_001c0e9c = DAT_001c0e9c | 4;\n      return 1;\n    }\n    if (0x192 < (int)param_1) {\n      if (param_1 == 0x196) {\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if ((int)param_1 < 0x197) {\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (param_1 == 0x198) {\n        FUN_0004f470();\n        return 1;\n      }\n      if ((int)param_1 < 0x198) {\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }\n      if (param_1 != 0x199) {\n        return 0;\n      }\n      pcVar10 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar10,"none");\n      if (iVar8 == 0) {\n        DAT_001c0e2c = 0;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar10,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      DAT_001c0e2c = 5;\n      return 1;\n    }\n    if (param_1 == 0x14d) {\n      DAT_001bfd3c = 0xffffffff;\n      return 1;\n    }\n    if (0x14d < (int)param_1) {\n      if (param_1 == 400) {\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }\n      if ((int)param_1 < 0x191) {\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x100;\n      return 1;\n    }\n    if (param_1 != 0x14b) {\n      if (param_1 == 0x14c) {\n        DAT_001bfd34 = 0;\n        return 1;\n      }\n      return 0;\n    }\n    DAT_001bfd34 = 1;\n    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      DAT_001bfd34 = 1;\n      return 1;\n    }\n    DAT_001bfd44 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n    DAT_001bfd48 = 0;\n    if (((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&\n       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)) {\n      DAT_001bfd48 = 0;\n      return 1;\n    }\n    pcVar10 = *(char **)puVar1;\n    pcVar4 = "%F%P: invalid pagesize `%s\'\n";\n  }\nLAB_0004f9a8:\n  uVar7 = dcgettext(0,pcVar4,5);\n  FUN_00034d60(uVar7,pcVar10);\n  return 1;\n}" ({ "{") (declaration "undefined *puVar1;" (type_identifier "undefined") (pointer_declarator "*puVar1" (* "*") (identifier "puVar1")) (; ";")) (declaration "undefined1 uVar2;" (type_identifier "undefined1") (identifier "uVar2") (; ";")) (declaration "byte *pbVar3;" (type_identifier "byte") (pointer_declarator "*pbVar3" (* "*") (identifier "pbVar3")) (; ";")) (declaration "char *pcVar4;" (primitive_type "char") (pointer_declarator "*pcVar4" (* "*") (identifier "pcVar4")) (; ";")) (declaration "ulong uVar5;" (type_identifier "ulong") (identifier "uVar5") (; ";")) (declaration "undefined4 uVar6;" (type_identifier "undefined4") (identifier "uVar6") (; ";")) (declaration "undefined4 uVar7;" (type_identifier "undefined4") (identifier "uVar7") (; ";")) (declaration "int iVar8;" (primitive_type "int") (identifier "iVar8") (; ";")) (declaration "byte *pbVar9;" (type_identifier "byte") (pointer_declarator "*pbVar9" (* "*") (identifier "pbVar9")) (; ";")) (declaration "char *pcVar10;" (primitive_type "char") (pointer_declarator "*pcVar10" (* "*") (identifier "pcVar10")) (; ";")) (declaration "byte *pbVar11;" (type_identifier "byte") (pointer_declarator "*pbVar11" (* "*") (identifier "pbVar11")) (; ";")) (declaration "bool bVar12;" (primitive_type "bool") (identifier "bVar12") (; ";")) (declaration "bool bVar13;" (primitive_type "bool") (identifier "bVar13") (; ";")) (declaration "bool bVar14;" (primitive_type "bool") (identifier "bVar14") (; ";")) (declaration "byte bVar15;" (type_identifier "byte") (identifier "bVar15") (; ";")) (declaration "char *local_20 [3];" (primitive_type "char") (pointer_declarator "*local_20 [3]" (* "*") (array_declarator "local_20 [3]" (identifier "local_20") ([ "[") (number_literal "3") (] "]"))) (; ";")) (declaration "undefined4 uStack_14;" (type_identifier "undefined4") (identifier "uStack_14") (; ";")) (expression_statement "puVar1 = PTR_optarg_001befe4;" (assignment_expression "puVar1 = PTR_optarg_001befe4" (identifier "puVar1") (= "=") (identifier "PTR_optarg_001befe4")) (; ";")) (expression_statement "bVar15 = 0;" (assignment_expression "bVar15 = 0" (identifier "bVar15") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_14 = 0x4f579;" (assignment_expression "uStack_14 = 0x4f579" (identifier "uStack_14") (= "=") (number_literal "0x4f579")) (; ";")) (if_statement "if (param_1 == 0x14a) {\n    DAT_001bfd28 = 0;\n    return 1;\n  }" (if "if") (parenthesized_expression "(param_1 == 0x14a)" (( "(") (binary_expression "param_1 == 0x14a" (identifier "param_1") (== "==") (number_literal "0x14a")) () ")")) (compound_statement "{\n    DAT_001bfd28 = 0;\n    return 1;\n  }" ({ "{") (expression_statement "DAT_001bfd28 = 0;" (assignment_expression "DAT_001bfd28 = 0" (identifier "DAT_001bfd28") (= "=") (number_literal "0")) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "uVar2 = DAT_001c0e24;" (assignment_expression "uVar2 = DAT_001c0e24" (identifier "uVar2") (= "=") (identifier "DAT_001c0e24")) (; ";")) (if_statement "if ((int)param_1 < 0x14b) {\n    if (param_1 == 0x142) {\n      DAT_001bfd2c = 1;\n      return 1;\n    }\n    if (0x142 < (int)param_1) {\n      if (param_1 == 0x146) {\n        DAT_001bfd24 = 0;\n        return 1;\n      }\n      if (0x146 < (int)param_1) {\n        if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }\n        if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }\n        DAT_001bfd28 = 1;\n        return 1;\n      }\n      if (param_1 == 0x144) {\n        DAT_001bfd20 = 1;\n        return 1;\n      }\n      if ((int)param_1 < 0x145) {\n        DAT_001bfd20 = 2;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        DAT_001bfd24 = 5;\n        return 1;\n      }\n      uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n      if ((*local_20[0] == '\0') && (uVar5 < 6)) {\n        DAT_001bfd24 = uVar5;\n        return 1;\n      }\n      uVar7 = *(undefined4 *)puVar1;\n      uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      FUN_00034d60(uVar6,uVar7);\n      DAT_001bfd24 = uVar5;\n      return 1;\n    }\n    if (param_1 == 0xc2) {\n      DAT_001c0b2c = 1;\n      DAT_001bfd2c = 1;\n      return 0;\n    }\n    if (0xc2 < (int)param_1) {\n      if (param_1 == 0x12e) {\n        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;\n        return 1;\n      }\n      if (param_1 != 0x141) {\n        if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      DAT_001c0b2c = 1;\n      return 1;\n    }\n    if (param_1 == 0x50) {\n      FUN_0004f470();\n      return 1;\n    }\n    bVar12 = param_1 < 0x7a;\n    bVar14 = param_1 == 0x7a;\n    if (!bVar14) {\n      return 0;\n    }\n    iVar8 = 5;\n    pbVar3 = *(byte **)PTR_optarg_001befe4;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)0x6ed7c;\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar11;\n      bVar14 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar14);\n    bVar13 = false;\n    bVar12 = (!bVar12 && !bVar14) == bVar12;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60;\n      return 1;\n    }\n    iVar8 = 7;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"undefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }\n    iVar8 = 8;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"muldefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar14 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar13 = false;\n    bVar12 = (!bVar14 && !bVar12) == bVar14;\n    if (bVar12) {\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x800;\n      return 1;\n    }\n    iVar8 = 0xe;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"max-page-size=";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0);\n      DAT_001c0f88 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)) {\n        DAT_001c0f88 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0xe);\n    }\n    else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar3;\n      pbVar11 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      } while (bVar12);\n      bVar13 = false;\n      bVar12 = (!bVar14 && !bVar12) == bVar14;\n      if (!bVar12) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }\n      DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);\n      DAT_001c0f90 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {\n        DAT_001c0f90 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid common page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0x11);\n    }\n  }\n  else {\n    if (param_1 == 0x192) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;\n      DAT_001c0e9c = DAT_001c0e9c | 4;\n      return 1;\n    }\n    if (0x192 < (int)param_1) {\n      if (param_1 == 0x196) {\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if ((int)param_1 < 0x197) {\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (param_1 == 0x198) {\n        FUN_0004f470();\n        return 1;\n      }\n      if ((int)param_1 < 0x198) {\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }\n      if (param_1 != 0x199) {\n        return 0;\n      }\n      pcVar10 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar10,"none");\n      if (iVar8 == 0) {\n        DAT_001c0e2c = 0;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar10,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      DAT_001c0e2c = 5;\n      return 1;\n    }\n    if (param_1 == 0x14d) {\n      DAT_001bfd3c = 0xffffffff;\n      return 1;\n    }\n    if (0x14d < (int)param_1) {\n      if (param_1 == 400) {\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }\n      if ((int)param_1 < 0x191) {\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x100;\n      return 1;\n    }\n    if (param_1 != 0x14b) {\n      if (param_1 == 0x14c) {\n        DAT_001bfd34 = 0;\n        return 1;\n      }\n      return 0;\n    }\n    DAT_001bfd34 = 1;\n    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      DAT_001bfd34 = 1;\n      return 1;\n    }\n    DAT_001bfd44 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n    DAT_001bfd48 = 0;\n    if (((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&\n       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)) {\n      DAT_001bfd48 = 0;\n      return 1;\n    }\n    pcVar10 = *(char **)puVar1;\n    pcVar4 = "%F%P: invalid pagesize `%s\'\n";\n  }" (if "if") (parenthesized_expression "((int)param_1 < 0x14b)" (( "(") (binary_expression "(int)param_1 < 0x14b" (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1")) (< "<") (number_literal "0x14b")) () ")")) (compound_statement "{\n    if (param_1 == 0x142) {\n      DAT_001bfd2c = 1;\n      return 1;\n    }\n    if (0x142 < (int)param_1) {\n      if (param_1 == 0x146) {\n        DAT_001bfd24 = 0;\n        return 1;\n      }\n      if (0x146 < (int)param_1) {\n        if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }\n        if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }\n        DAT_001bfd28 = 1;\n        return 1;\n      }\n      if (param_1 == 0x144) {\n        DAT_001bfd20 = 1;\n        return 1;\n      }\n      if ((int)param_1 < 0x145) {\n        DAT_001bfd20 = 2;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        DAT_001bfd24 = 5;\n        return 1;\n      }\n      uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n      if ((*local_20[0] == '\0') && (uVar5 < 6)) {\n        DAT_001bfd24 = uVar5;\n        return 1;\n      }\n      uVar7 = *(undefined4 *)puVar1;\n      uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      FUN_00034d60(uVar6,uVar7);\n      DAT_001bfd24 = uVar5;\n      return 1;\n    }\n    if (param_1 == 0xc2) {\n      DAT_001c0b2c = 1;\n      DAT_001bfd2c = 1;\n      return 0;\n    }\n    if (0xc2 < (int)param_1) {\n      if (param_1 == 0x12e) {\n        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;\n        return 1;\n      }\n      if (param_1 != 0x141) {\n        if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      DAT_001c0b2c = 1;\n      return 1;\n    }\n    if (param_1 == 0x50) {\n      FUN_0004f470();\n      return 1;\n    }\n    bVar12 = param_1 < 0x7a;\n    bVar14 = param_1 == 0x7a;\n    if (!bVar14) {\n      return 0;\n    }\n    iVar8 = 5;\n    pbVar3 = *(byte **)PTR_optarg_001befe4;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)0x6ed7c;\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar11;\n      bVar14 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar14);\n    bVar13 = false;\n    bVar12 = (!bVar12 && !bVar14) == bVar12;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60;\n      return 1;\n    }\n    iVar8 = 7;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"undefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }\n    iVar8 = 8;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"muldefs";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar14 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar13 = false;\n    bVar12 = (!bVar14 && !bVar12) == bVar14;\n    if (bVar12) {\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x800;\n      return 1;\n    }\n    iVar8 = 0xe;\n    pbVar9 = pbVar3;\n    pbVar11 = (byte *)"max-page-size=";\n    do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);\n    bVar14 = false;\n    bVar12 = (!bVar13 && !bVar12) == bVar13;\n    if (bVar12) {\n      DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0);\n      DAT_001c0f88 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)) {\n        DAT_001c0f88 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0xe);\n    }\n    else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar3;\n      pbVar11 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      } while (bVar12);\n      bVar13 = false;\n      bVar12 = (!bVar14 && !bVar12) == bVar14;\n      if (!bVar12) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }\n      DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);\n      DAT_001c0f90 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {\n        DAT_001c0f90 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid common page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0x11);\n    }\n  }" ({ "{") (if_statement "if (param_1 == 0x142) {\n      DAT_001bfd2c = 1;\n      return 1;\n    }" (if "if") (parenthesized_expression "(param_1 == 0x142)" (( "(") (binary_expression "param_1 == 0x142" (identifier "param_1") (== "==") (number_literal "0x142")) () ")")) (compound_statement "{\n      DAT_001bfd2c = 1;\n      return 1;\n    }" ({ "{") (expression_statement "DAT_001bfd2c = 1;" (assignment_expression "DAT_001bfd2c = 1" (identifier "DAT_001bfd2c") (= "=") (number_literal "1")) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (if_statement "if (0x142 < (int)param_1) {\n      if (param_1 == 0x146) {\n        DAT_001bfd24 = 0;\n        return 1;\n      }\n      if (0x146 < (int)param_1) {\n        if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }\n        if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }\n        DAT_001bfd28 = 1;\n        return 1;\n      }\n      if (param_1 == 0x144) {\n        DAT_001bfd20 = 1;\n        return 1;\n      }\n      if ((int)param_1 < 0x145) {\n        DAT_001bfd20 = 2;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        DAT_001bfd24 = 5;\n        return 1;\n      }\n      uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n      if ((*local_20[0] == '\0') && (uVar5 < 6)) {\n        DAT_001bfd24 = uVar5;\n        return 1;\n      }\n      uVar7 = *(undefined4 *)puVar1;\n      uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      FUN_00034d60(uVar6,uVar7);\n      DAT_001bfd24 = uVar5;\n      return 1;\n    }" (if "if") (parenthesized_expression "(0x142 < (int)param_1)" (( "(") (binary_expression "0x142 < (int)param_1" (number_literal "0x142") (< "<") (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1"))) () ")")) (compound_statement "{\n      if (param_1 == 0x146) {\n        DAT_001bfd24 = 0;\n        return 1;\n      }\n      if (0x146 < (int)param_1) {\n        if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }\n        if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }\n        DAT_001bfd28 = 1;\n        return 1;\n      }\n      if (param_1 == 0x144) {\n        DAT_001bfd20 = 1;\n        return 1;\n      }\n      if ((int)param_1 < 0x145) {\n        DAT_001bfd20 = 2;\n        return 1;\n      }\n      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        DAT_001bfd24 = 5;\n        return 1;\n      }\n      uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n      if ((*local_20[0] == '\0') && (uVar5 < 6)) {\n        DAT_001bfd24 = uVar5;\n        return 1;\n      }\n      uVar7 = *(undefined4 *)puVar1;\n      uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);\n      FUN_00034d60(uVar6,uVar7);\n      DAT_001bfd24 = uVar5;\n      return 1;\n    }" ({ "{") (if_statement "if (param_1 == 0x146) {\n        DAT_001bfd24 = 0;\n        return 1;\n      }" (if "if") (parenthesized_expression "(param_1 == 0x146)" (( "(") (binary_expression "param_1 == 0x146" (identifier "param_1") (== "==") (number_literal "0x146")) () ")")) (compound_statement "{\n        DAT_001bfd24 = 0;\n        return 1;\n      }" ({ "{") (expression_statement "DAT_001bfd24 = 0;" (assignment_expression "DAT_001bfd24 = 0" (identifier "DAT_001bfd24") (= "=") (number_literal "0")) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (if_statement "if (0x146 < (int)param_1) {\n        if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }\n        if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }\n        DAT_001bfd28 = 1;\n        return 1;\n      }" (if "if") (parenthesized_expression "(0x146 < (int)param_1)" (( "(") (binary_expression "0x146 < (int)param_1" (number_literal "0x146") (< "<") (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1"))) () ")")) (compound_statement "{\n        if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }\n        if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }\n        DAT_001bfd28 = 1;\n        return 1;\n      }" ({ "{") (if_statement "if (param_1 == 0x148) {\n          DAT_001c0b24 = 1;\n          return 1;\n        }" (if "if") (parenthesized_expression "(param_1 == 0x148)" (( "(") (binary_expression "param_1 == 0x148" (identifier "param_1") (== "==") (number_literal "0x148")) () ")")) (compound_statement "{\n          DAT_001c0b24 = 1;\n          return 1;\n        }" ({ "{") (expression_statement "DAT_001c0b24 = 1;" (assignment_expression "DAT_001c0b24 = 1" (identifier "DAT_001c0b24") (= "=") (number_literal "1")) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (if_statement "if ((int)param_1 < 0x149) {\n          DAT_001c0b28 = 1;\n          return 1;\n        }" (if "if") (parenthesized_expression "((int)param_1 < 0x149)" (( "(") (binary_expression "(int)param_1 < 0x149" (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1")) (< "<") (number_literal "0x149")) () ")")) (compound_statement "{\n          DAT_001c0b28 = 1;\n          return 1;\n        }" ({ "{") (expression_statement "DAT_001c0b28 = 1;" (assignment_expression "DAT_001c0b28 = 1" (identifier "DAT_001c0b28") (= "=") (number_literal "1")) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "DAT_001bfd28 = 1;" (assignment_expression "DAT_001bfd28 = 1" (identifier "DAT_001bfd28") (= "=") (number_literal "1")) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (if_statement "if (param_1 == 0x144) {\n        DAT_001bfd20 = 1;\n        return 1;\n      }" (if "if") (parenthesized_expression "(param_1 == 0x144)" (( "(") (binary_expression "param_1 == 0x144" (identifier "param_1") (== "==") (number_literal "0x144")) () ")")) (compound_statement "{\n        DAT_001bfd20 = 1;\n        return 1;\n      }" ({ "{") (expression_statement "DAT_001bfd20 = 1;" (assignment_expression "DAT_001bfd20 = 1" (identifier "DAT_001bfd20") (= "=") (number_literal "1")) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (if_statement "if ((int)param_1 < 0x145) {\n        DAT_001bfd20 = 2;\n        return 1;\n      }" (if "if") (parenthesized_expression "((int)param_1 < 0x145)" (( "(") (binary_expression "(int)param_1 < 0x145" (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1")) (< "<") (number_literal "0x145")) () ")")) (compound_statement "{\n        DAT_001bfd20 = 2;\n        return 1;\n      }" ({ "{") (expression_statement "DAT_001bfd20 = 2;" (assignment_expression "DAT_001bfd20 = 2" (identifier "DAT_001bfd20") (= "=") (number_literal "2")) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (if_statement "if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n        DAT_001bfd24 = 5;\n        return 1;\n      }" (if "if") (parenthesized_expression "(*(char **)PTR_optarg_001befe4 == (char *)0x0)" (( "(") (binary_expression "*(char **)PTR_optarg_001befe4 == (char *)0x0" (pointer_expression "*(char **)PTR_optarg_001befe4" (* "*") (cast_expression "(char **)PTR_optarg_001befe4" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR_optarg_001befe4"))) (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        DAT_001bfd24 = 5;\n        return 1;\n      }" ({ "{") (expression_statement "DAT_001bfd24 = 5;" (assignment_expression "DAT_001bfd24 = 5" (identifier "DAT_001bfd24") (= "=") (number_literal "5")) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);" (assignment_expression "uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0)" (identifier "uVar5") (= "=") (call_expression "strtoul(*(char **)PTR_optarg_001befe4,local_20,0)" (identifier "strtoul") (argument_list "(*(char **)PTR_optarg_001befe4,local_20,0)" (( "(") (pointer_expression "*(char **)PTR_optarg_001befe4" (* "*") (cast_expression "(char **)PTR_optarg_001befe4" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR_optarg_001befe4"))) (, ",") (identifier "local_20") (, ",") (number_literal "0") () ")")))) (; ";")) (if_statement "if ((*local_20[0] == '\0') && (uVar5 < 6)) {\n        DAT_001bfd24 = uVar5;\n        return 1;\n      }" (if "if") (parenthesized_expression "((*local_20[0] == '\0') && (uVar5 < 6))" (( "(") (binary_expression "(*local_20[0] == '\0') && (uVar5 < 6)" (parenthesized_expression "(*local_20[0] == '\0')" (( "(") (binary_expression "*local_20[0] == '\0'" (pointer_expression "*local_20[0]" (* "*") (subscript_expression "local_20[0]" (identifier "local_20") ([ "[") (number_literal "0") (] "]"))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(uVar5 < 6)" (( "(") (binary_expression "uVar5 < 6" (identifier "uVar5") (< "<") (number_literal "6")) () ")"))) () ")")) (compound_statement "{\n        DAT_001bfd24 = uVar5;\n        return 1;\n      }" ({ "{") (expression_statement "DAT_001bfd24 = uVar5;" (assignment_expression "DAT_001bfd24 = uVar5" (identifier "DAT_001bfd24") (= "=") (identifier "uVar5")) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "uVar7 = *(undefined4 *)puVar1;" (assignment_expression "uVar7 = *(undefined4 *)puVar1" (identifier "uVar7") (= "=") (pointer_expression "*(undefined4 *)puVar1" (* "*") (cast_expression "(undefined4 *)puVar1" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar1")))) (; ";")) (expression_statement "uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);" (assignment_expression "uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5)" (identifier "uVar6") (= "=") (call_expression "dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5)" (identifier "dcgettext") (argument_list "(0,"%F%P: invalid --plt-align `%s\'\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""%F%P: invalid --plt-align `%s\'\n"" (" """) (string_content "%F%P: invalid --plt-align `%s") (escape_sequence "\'") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_00034d60(uVar6,uVar7);" (call_expression "FUN_00034d60(uVar6,uVar7)" (identifier "FUN_00034d60") (argument_list "(uVar6,uVar7)" (( "(") (identifier "uVar6") (, ",") (identifier "uVar7") () ")"))) (; ";")) (expression_statement "DAT_001bfd24 = uVar5;" (assignment_expression "DAT_001bfd24 = uVar5" (identifier "DAT_001bfd24") (= "=") (identifier "uVar5")) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (if_statement "if (param_1 == 0xc2) {\n      DAT_001c0b2c = 1;\n      DAT_001bfd2c = 1;\n      return 0;\n    }" (if "if") (parenthesized_expression "(param_1 == 0xc2)" (( "(") (binary_expression "param_1 == 0xc2" (identifier "param_1") (== "==") (number_literal "0xc2")) () ")")) (compound_statement "{\n      DAT_001c0b2c = 1;\n      DAT_001bfd2c = 1;\n      return 0;\n    }" ({ "{") (expression_statement "DAT_001c0b2c = 1;" (assignment_expression "DAT_001c0b2c = 1" (identifier "DAT_001c0b2c") (= "=") (number_literal "1")) (; ";")) (expression_statement "DAT_001bfd2c = 1;" (assignment_expression "DAT_001bfd2c = 1" (identifier "DAT_001bfd2c") (= "=") (number_literal "1")) (; ";")) (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (if_statement "if (0xc2 < (int)param_1) {\n      if (param_1 == 0x12e) {\n        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;\n        return 1;\n      }\n      if (param_1 != 0x141) {\n        if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      DAT_001c0b2c = 1;\n      return 1;\n    }" (if "if") (parenthesized_expression "(0xc2 < (int)param_1)" (( "(") (binary_expression "0xc2 < (int)param_1" (number_literal "0xc2") (< "<") (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1"))) () ")")) (compound_statement "{\n      if (param_1 == 0x12e) {\n        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;\n        return 1;\n      }\n      if (param_1 != 0x141) {\n        if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }\n      DAT_001c0b2c = 1;\n      return 1;\n    }" ({ "{") (if_statement "if (param_1 == 0x12e) {\n        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;\n        return 1;\n      }" (if "if") (parenthesized_expression "(param_1 == 0x12e)" (( "(") (binary_expression "param_1 == 0x12e" (identifier "param_1") (== "==") (number_literal "0x12e")) () ")")) (compound_statement "{\n        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;\n        return 1;\n      }" ({ "{") (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 | 0x200;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 | 0x200" (identifier "_DAT_001c0e24") (= "=") (binary_expression "_DAT_001c0e24 | 0x200" (identifier "_DAT_001c0e24") (| "|") (number_literal "0x200"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (if_statement "if (param_1 != 0x141) {\n        if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }" (if "if") (parenthesized_expression "(param_1 != 0x141)" (( "(") (binary_expression "param_1 != 0x141" (identifier "param_1") (!= "!=") (number_literal "0x141")) () ")")) (compound_statement "{\n        if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }\n        return 0;\n      }" ({ "{") (if_statement "if (param_1 == 0x12d) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }" (if "if") (parenthesized_expression "(param_1 == 0x12d)" (( "(") (binary_expression "param_1 == 0x12d" (identifier "param_1") (== "==") (number_literal "0x12d")) () ")")) (compound_statement "{\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;\n          return 1;\n        }" ({ "{") (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff" (identifier "_DAT_001c0e24") (= "=") (binary_expression "_DAT_001c0e24 & 0xfffffdff" (identifier "_DAT_001c0e24") (& "&") (number_literal "0xfffffdff"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (expression_statement "DAT_001c0b2c = 1;" (assignment_expression "DAT_001c0b2c = 1" (identifier "DAT_001c0b2c") (= "=") (number_literal "1")) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (if_statement "if (param_1 == 0x50) {\n      FUN_0004f470();\n      return 1;\n    }" (if "if") (parenthesized_expression "(param_1 == 0x50)" (( "(") (binary_expression "param_1 == 0x50" (identifier "param_1") (== "==") (number_literal "0x50")) () ")")) (compound_statement "{\n      FUN_0004f470();\n      return 1;\n    }" ({ "{") (expression_statement "FUN_0004f470();" (call_expression "FUN_0004f470()" (identifier "FUN_0004f470") (argument_list "()" (( "(") () ")"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "bVar12 = param_1 < 0x7a;" (assignment_expression "bVar12 = param_1 < 0x7a" (identifier "bVar12") (= "=") (binary_expression "param_1 < 0x7a" (identifier "param_1") (< "<") (number_literal "0x7a"))) (; ";")) (expression_statement "bVar14 = param_1 == 0x7a;" (assignment_expression "bVar14 = param_1 == 0x7a" (identifier "bVar14") (= "=") (binary_expression "param_1 == 0x7a" (identifier "param_1") (== "==") (number_literal "0x7a"))) (; ";")) (if_statement "if (!bVar14) {\n      return 0;\n    }" (if "if") (parenthesized_expression "(!bVar14)" (( "(") (unary_expression "!bVar14" (! "!") (identifier "bVar14")) () ")")) (compound_statement "{\n      return 0;\n    }" ({ "{") (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (expression_statement "iVar8 = 5;" (assignment_expression "iVar8 = 5" (identifier "iVar8") (= "=") (number_literal "5")) (; ";")) (expression_statement "pbVar3 = *(byte **)PTR_optarg_001befe4;" (assignment_expression "pbVar3 = *(byte **)PTR_optarg_001befe4" (identifier "pbVar3") (= "=") (pointer_expression "*(byte **)PTR_optarg_001befe4" (* "*") (cast_expression "(byte **)PTR_optarg_001befe4" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR_optarg_001befe4")))) (; ";")) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" (identifier "pbVar9") (= "=") (identifier "pbVar3")) (; ";")) (expression_statement "pbVar11 = (byte *)0x6ed7c;" (assignment_expression "pbVar11 = (byte *)0x6ed7c" (identifier "pbVar11") (= "=") (cast_expression "(byte *)0x6ed7c" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x6ed7c"))) (; ";")) (do_statement "do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar11;\n      bVar14 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar14);" (do "do") (compound_statement "{\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar12 = *pbVar9 < *pbVar11;\n      bVar14 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    }" ({ "{") (if_statement "if (iVar8 == 0) break;" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" (identifier "iVar8") (= "=") (binary_expression "iVar8 + -1" (identifier "iVar8") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar12 = *pbVar9 < *pbVar11;" (assignment_expression "bVar12 = *pbVar9 < *pbVar11" (identifier "bVar12") (= "=") (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")))) (; ";")) (expression_statement "bVar14 = *pbVar9 == *pbVar11;" (assignment_expression "bVar14 = *pbVar9 == *pbVar11" (identifier "bVar14") (= "=") (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + 1" (identifier "pbVar9") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" (identifier "pbVar11") (= "=") (binary_expression "pbVar11 + 1" (identifier "pbVar11") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar14)" (( "(") (identifier "bVar14") () ")")) (; ";")) (expression_statement "bVar13 = false;" (assignment_expression "bVar13 = false" (identifier "bVar13") (= "=") (false "false")) (; ";")) (expression_statement "bVar12 = (!bVar12 && !bVar14) == bVar12;" (assignment_expression "bVar12 = (!bVar12 && !bVar14) == bVar12" (identifier "bVar12") (= "=") (binary_expression "(!bVar12 && !bVar14) == bVar12" (parenthesized_expression "(!bVar12 && !bVar14)" (( "(") (binary_expression "!bVar12 && !bVar14" (unary_expression "!bVar12" (! "!") (identifier "bVar12")) (&& "&&") (unary_expression "!bVar14" (! "!") (identifier "bVar14"))) () ")")) (== "==") (identifier "bVar12"))) (; ";")) (if_statement "if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60;\n      return 1;\n    }" (if "if") (parenthesized_expression "(bVar12)" (( "(") (identifier "bVar12") () ")")) (compound_statement "{\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60;\n      return 1;\n    }" ({ "{") (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60" (field_expression "DAT_001c0e20._2_2_" (identifier "DAT_001c0e20") (. ".") (field_identifier "_2_2_")) (= "=") (binary_expression "DAT_001c0e20._2_2_ | 0x60" (field_expression "DAT_001c0e20._2_2_" (identifier "DAT_001c0e20") (. ".") (field_identifier "_2_2_")) (| "|") (number_literal "0x60"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = 7;" (assignment_expression "iVar8 = 7" (identifier "iVar8") (= "=") (number_literal "7")) (; ";")) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" (identifier "pbVar9") (= "=") (identifier "pbVar3")) (; ";")) (expression_statement "pbVar11 = (byte *)"undefs";" (assignment_expression "pbVar11 = (byte *)"undefs"" (identifier "pbVar11") (= "=") (cast_expression "(byte *)"undefs"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal ""undefs"" (" """) (string_content "undefs") (" """)))) (; ";")) (do_statement "do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);" (do "do") (compound_statement "{\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    }" ({ "{") (if_statement "if (iVar8 == 0) break;" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" (identifier "iVar8") (= "=") (binary_expression "iVar8 + -1" (identifier "iVar8") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar13 = *pbVar9 < *pbVar11;" (assignment_expression "bVar13 = *pbVar9 < *pbVar11" (identifier "bVar13") (= "=") (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")))) (; ";")) (expression_statement "bVar12 = *pbVar9 == *pbVar11;" (assignment_expression "bVar12 = *pbVar9 == *pbVar11" (identifier "bVar12") (= "=") (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + 1" (identifier "pbVar9") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" (identifier "pbVar11") (= "=") (binary_expression "pbVar11 + 1" (identifier "pbVar11") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar12)" (( "(") (identifier "bVar12") () ")")) (; ";")) (expression_statement "bVar14 = false;" (assignment_expression "bVar14 = false" (identifier "bVar14") (= "=") (false "false")) (; ";")) (expression_statement "bVar12 = (!bVar13 && !bVar12) == bVar13;" (assignment_expression "bVar12 = (!bVar13 && !bVar12) == bVar13" (identifier "bVar12") (= "=") (binary_expression "(!bVar13 && !bVar12) == bVar13" (parenthesized_expression "(!bVar13 && !bVar12)" (( "(") (binary_expression "!bVar13 && !bVar12" (unary_expression "!bVar13" (! "!") (identifier "bVar13")) (&& "&&") (unary_expression "!bVar12" (! "!") (identifier "bVar12"))) () ")")) (== "==") (identifier "bVar13"))) (; ";")) (if_statement "if (bVar12) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }" (if "if") (parenthesized_expression "(bVar12)" (( "(") (identifier "bVar12") () ")")) (compound_statement "{\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20;\n      return 1;\n    }" ({ "{") (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20" (field_expression "DAT_001c0e20._2_2_" (identifier "DAT_001c0e20") (. ".") (field_identifier "_2_2_")) (= "=") (binary_expression "DAT_001c0e20._2_2_ & 0xff9f | 0x20" (binary_expression "DAT_001c0e20._2_2_ & 0xff9f" (field_expression "DAT_001c0e20._2_2_" (identifier "DAT_001c0e20") (. ".") (field_identifier "_2_2_")) (& "&") (number_literal "0xff9f")) (| "|") (number_literal "0x20"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = 8;" (assignment_expression "iVar8 = 8" (identifier "iVar8") (= "=") (number_literal "8")) (; ";")) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" (identifier "pbVar9") (= "=") (identifier "pbVar3")) (; ";")) (expression_statement "pbVar11 = (byte *)"muldefs";" (assignment_expression "pbVar11 = (byte *)"muldefs"" (identifier "pbVar11") (= "=") (cast_expression "(byte *)"muldefs"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal ""muldefs"" (" """) (string_content "muldefs") (" """)))) (; ";")) (do_statement "do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar14 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);" (do "do") (compound_statement "{\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar14 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    }" ({ "{") (if_statement "if (iVar8 == 0) break;" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" (identifier "iVar8") (= "=") (binary_expression "iVar8 + -1" (identifier "iVar8") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar14 = *pbVar9 < *pbVar11;" (assignment_expression "bVar14 = *pbVar9 < *pbVar11" (identifier "bVar14") (= "=") (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")))) (; ";")) (expression_statement "bVar12 = *pbVar9 == *pbVar11;" (assignment_expression "bVar12 = *pbVar9 == *pbVar11" (identifier "bVar12") (= "=") (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + 1" (identifier "pbVar9") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" (identifier "pbVar11") (= "=") (binary_expression "pbVar11 + 1" (identifier "pbVar11") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar12)" (( "(") (identifier "bVar12") () ")")) (; ";")) (expression_statement "bVar13 = false;" (assignment_expression "bVar13 = false" (identifier "bVar13") (= "=") (false "false")) (; ";")) (expression_statement "bVar12 = (!bVar14 && !bVar12) == bVar14;" (assignment_expression "bVar12 = (!bVar14 && !bVar12) == bVar14" (identifier "bVar12") (= "=") (binary_expression "(!bVar14 && !bVar12) == bVar14" (parenthesized_expression "(!bVar14 && !bVar12)" (( "(") (binary_expression "!bVar14 && !bVar12" (unary_expression "!bVar14" (! "!") (identifier "bVar14")) (&& "&&") (unary_expression "!bVar12" (! "!") (identifier "bVar12"))) () ")")) (== "==") (identifier "bVar14"))) (; ";")) (if_statement "if (bVar12) {\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x800;\n      return 1;\n    }" (if "if") (parenthesized_expression "(bVar12)" (( "(") (identifier "bVar12") () ")")) (compound_statement "{\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x800;\n      return 1;\n    }" ({ "{") (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 | 0x800;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 | 0x800" (identifier "_DAT_001c0e24") (= "=") (binary_expression "_DAT_001c0e24 | 0x800" (identifier "_DAT_001c0e24") (| "|") (number_literal "0x800"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = 0xe;" (assignment_expression "iVar8 = 0xe" (identifier "iVar8") (= "=") (number_literal "0xe")) (; ";")) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" (identifier "pbVar9") (= "=") (identifier "pbVar3")) (; ";")) (expression_statement "pbVar11 = (byte *)"max-page-size=";" (assignment_expression "pbVar11 = (byte *)"max-page-size="" (identifier "pbVar11") (= "=") (cast_expression "(byte *)"max-page-size="" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal ""max-page-size="" (" """) (string_content "max-page-size=") (" """)))) (; ";")) (do_statement "do {\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    } while (bVar12);" (do "do") (compound_statement "{\n      if (iVar8 == 0) break;\n      iVar8 = iVar8 + -1;\n      bVar13 = *pbVar9 < *pbVar11;\n      bVar12 = *pbVar9 == *pbVar11;\n      pbVar9 = pbVar9 + 1;\n      pbVar11 = pbVar11 + 1;\n    }" ({ "{") (if_statement "if (iVar8 == 0) break;" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" (identifier "iVar8") (= "=") (binary_expression "iVar8 + -1" (identifier "iVar8") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar13 = *pbVar9 < *pbVar11;" (assignment_expression "bVar13 = *pbVar9 < *pbVar11" (identifier "bVar13") (= "=") (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")))) (; ";")) (expression_statement "bVar12 = *pbVar9 == *pbVar11;" (assignment_expression "bVar12 = *pbVar9 == *pbVar11" (identifier "bVar12") (= "=") (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + 1" (identifier "pbVar9") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" (identifier "pbVar11") (= "=") (binary_expression "pbVar11 + 1" (identifier "pbVar11") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar12)" (( "(") (identifier "bVar12") () ")")) (; ";")) (expression_statement "bVar14 = false;" (assignment_expression "bVar14 = false" (identifier "bVar14") (= "=") (false "false")) (; ";")) (expression_statement "bVar12 = (!bVar13 && !bVar12) == bVar13;" (assignment_expression "bVar12 = (!bVar13 && !bVar12) == bVar13" (identifier "bVar12") (= "=") (binary_expression "(!bVar13 && !bVar12) == bVar13" (parenthesized_expression "(!bVar13 && !bVar12)" (( "(") (binary_expression "!bVar13 && !bVar12" (unary_expression "!bVar13" (! "!") (identifier "bVar13")) (&& "&&") (unary_expression "!bVar12" (! "!") (identifier "bVar12"))) () ")")) (== "==") (identifier "bVar13"))) (; ";")) (if_statement "if (bVar12) {\n      DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0);\n      DAT_001c0f88 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)) {\n        DAT_001c0f88 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0xe);\n    }\n    else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar3;\n      pbVar11 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      } while (bVar12);\n      bVar13 = false;\n      bVar12 = (!bVar14 && !bVar12) == bVar14;\n      if (!bVar12) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }\n      DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);\n      DAT_001c0f90 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {\n        DAT_001c0f90 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid common page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0x11);\n    }" (if "if") (parenthesized_expression "(bVar12)" (( "(") (identifier "bVar12") () ")")) (compound_statement "{\n      DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0);\n      DAT_001c0f88 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)) {\n        DAT_001c0f88 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid maximum page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0xe);\n    }" ({ "{") (expression_statement "DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0);" (assignment_expression "DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0)" (identifier "DAT_001c0f84") (= "=") (call_expression "strtoul((char *)(pbVar3 + 0xe),local_20,0)" (identifier "strtoul") (argument_list "((char *)(pbVar3 + 0xe),local_20,0)" (( "(") (cast_expression "(char *)(pbVar3 + 0xe)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pbVar3 + 0xe)" (( "(") (binary_expression "pbVar3 + 0xe" (identifier "pbVar3") (+ "+") (number_literal "0xe")) () ")"))) (, ",") (identifier "local_20") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "DAT_001c0f88 = 0;" (assignment_expression "DAT_001c0f88 = 0" (identifier "DAT_001c0f88") (= "=") (number_literal "0")) (; ";")) (if_statement "if ((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)) {\n        DAT_001c0f88 = 0;\n        return 1;\n      }" (if "if") (parenthesized_expression "((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0))" (( "(") (binary_expression "(*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)" (parenthesized_expression "(*local_20[0] == '\0')" (( "(") (binary_expression "*local_20[0] == '\0'" (pointer_expression "*local_20[0]" (* "*") (subscript_expression "local_20[0]" (identifier "local_20") ([ "[") (number_literal "0") (] "]"))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)" (( "(") (binary_expression "(DAT_001c0f84 & DAT_001c0f84 - 1) == 0" (parenthesized_expression "(DAT_001c0f84 & DAT_001c0f84 - 1)" (( "(") (binary_expression "DAT_001c0f84 & DAT_001c0f84 - 1" (identifier "DAT_001c0f84") (& "&") (binary_expression "DAT_001c0f84 - 1" (identifier "DAT_001c0f84") (- "-") (number_literal "1"))) () ")")) (== "==") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n        DAT_001c0f88 = 0;\n        return 1;\n      }" ({ "{") (expression_statement "DAT_001c0f88 = 0;" (assignment_expression "DAT_001c0f88 = 0" (identifier "DAT_001c0f88") (= "=") (number_literal "0")) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "pcVar4 = "%F%P: invalid maximum page size `%s\'\n";" (assignment_expression "pcVar4 = "%F%P: invalid maximum page size `%s\'\n"" (identifier "pcVar4") (= "=") (string_literal ""%F%P: invalid maximum page size `%s\'\n"" (" """) (string_content "%F%P: invalid maximum page size `%s") (escape_sequence "\'") (escape_sequence "\n") (" """))) (; ";")) (expression_statement "pcVar10 = (char *)(*(int *)puVar1 + 0xe);" (assignment_expression "pcVar10 = (char *)(*(int *)puVar1 + 0xe)" (identifier "pcVar10") (= "=") (cast_expression "(char *)(*(int *)puVar1 + 0xe)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)puVar1 + 0xe)" (( "(") (binary_expression "*(int *)puVar1 + 0xe" (pointer_expression "*(int *)puVar1" (* "*") (cast_expression "(int *)puVar1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar1"))) (+ "+") (number_literal "0xe")) () ")")))) (; ";")) (} "}")) (else_clause "else {\n      iVar8 = 0x11;\n      pbVar9 = pbVar3;\n      pbVar11 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      } while (bVar12);\n      bVar13 = false;\n      bVar12 = (!bVar14 && !bVar12) == bVar14;\n      if (!bVar12) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }\n      DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);\n      DAT_001c0f90 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {\n        DAT_001c0f90 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid common page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0x11);\n    }" (else "else") (compound_statement "{\n      iVar8 = 0x11;\n      pbVar9 = pbVar3;\n      pbVar11 = (byte *)"common-page-size=";\n      do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      } while (bVar12);\n      bVar13 = false;\n      bVar12 = (!bVar14 && !bVar12) == bVar14;\n      if (!bVar12) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }\n      DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);\n      DAT_001c0f90 = 0;\n      if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {\n        DAT_001c0f90 = 0;\n        return 1;\n      }\n      pcVar4 = "%F%P: invalid common page size `%s\'\n";\n      pcVar10 = (char *)(*(int *)puVar1 + 0x11);\n    }" ({ "{") (expression_statement "iVar8 = 0x11;" (assignment_expression "iVar8 = 0x11" (identifier "iVar8") (= "=") (number_literal "0x11")) (; ";")) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" (identifier "pbVar9") (= "=") (identifier "pbVar3")) (; ";")) (expression_statement "pbVar11 = (byte *)"common-page-size=";" (assignment_expression "pbVar11 = (byte *)"common-page-size="" (identifier "pbVar11") (= "=") (cast_expression "(byte *)"common-page-size="" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal ""common-page-size="" (" """) (string_content "common-page-size=") (" """)))) (; ";")) (do_statement "do {\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      } while (bVar12);" (do "do") (compound_statement "{\n        if (iVar8 == 0) break;\n        iVar8 = iVar8 + -1;\n        bVar14 = *pbVar9 < *pbVar11;\n        bVar12 = *pbVar9 == *pbVar11;\n        pbVar9 = pbVar9 + 1;\n        pbVar11 = pbVar11 + 1;\n      }" ({ "{") (if_statement "if (iVar8 == 0) break;" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" (identifier "iVar8") (= "=") (binary_expression "iVar8 + -1" (identifier "iVar8") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar14 = *pbVar9 < *pbVar11;" (assignment_expression "bVar14 = *pbVar9 < *pbVar11" (identifier "bVar14") (= "=") (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")))) (; ";")) (expression_statement "bVar12 = *pbVar9 == *pbVar11;" (assignment_expression "bVar12 = *pbVar9 == *pbVar11" (identifier "bVar12") (= "=") (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + 1" (identifier "pbVar9") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" (identifier "pbVar11") (= "=") (binary_expression "pbVar11 + 1" (identifier "pbVar11") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar12)" (( "(") (identifier "bVar12") () ")")) (; ";")) (expression_statement "bVar13 = false;" (assignment_expression "bVar13 = false" (identifier "bVar13") (= "=") (false "false")) (; ";")) (expression_statement "bVar12 = (!bVar14 && !bVar12) == bVar14;" (assignment_expression "bVar12 = (!bVar14 && !bVar12) == bVar14" (identifier "bVar12") (= "=") (binary_expression "(!bVar14 && !bVar12) == bVar14" (parenthesized_expression "(!bVar14 && !bVar12)" (( "(") (binary_expression "!bVar14 && !bVar12" (unary_expression "!bVar14" (! "!") (identifier "bVar14")) (&& "&&") (unary_expression "!bVar12" (! "!") (identifier "bVar12"))) () ")")) (== "==") (identifier "bVar14"))) (; ";")) (if_statement "if (!bVar12) {\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }" (if "if") (parenthesized_expression "(!bVar12)" (( "(") (unary_expression "!bVar12" (! "!") (identifier "bVar12")) () ")")) (compound_statement "{\n        iVar8 = 0xb;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)"stack-size=";\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }\n        iVar8 = 10;\n        pbVar9 = pbVar3;\n        pbVar11 = (byte *)0xa55ed;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noexecstack");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"globalaudit");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"global");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"initfirst");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"interpose");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"loadfltr");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodelete");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodlopen");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodump");\n        if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"now");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"lazy");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"origin");\n        if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"combreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocombreloc");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");\n        if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"relro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"norelro");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"separate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"noseparate-code");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"common");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nocommon");\n        if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"text");\n        if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"notext");\n        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }\n        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");\n        if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }\n        pcVar10 = "%P: warning: -z %s ignored\n";\nLAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);\n        FUN_00034d60(uVar7,pbVar3);\n        return 1;\n      }" ({ "{") (expression_statement "iVar8 = 0xb;" (assignment_expression "iVar8 = 0xb" (identifier "iVar8") (= "=") (number_literal "0xb")) (; ";")) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" (identifier "pbVar9") (= "=") (identifier "pbVar3")) (; ";")) (expression_statement "pbVar11 = (byte *)"stack-size=";" (assignment_expression "pbVar11 = (byte *)"stack-size="" (identifier "pbVar11") (= "=") (cast_expression "(byte *)"stack-size="" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal ""stack-size="" (" """) (string_content "stack-size=") (" """)))) (; ";")) (do_statement "do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);" (do "do") (compound_statement "{\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        }" ({ "{") (if_statement "if (iVar8 == 0) break;" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" (identifier "iVar8") (= "=") (binary_expression "iVar8 + -1" (identifier "iVar8") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar13 = *pbVar9 < *pbVar11;" (assignment_expression "bVar13 = *pbVar9 < *pbVar11" (identifier "bVar13") (= "=") (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")))) (; ";")) (expression_statement "bVar12 = *pbVar9 == *pbVar11;" (assignment_expression "bVar12 = *pbVar9 == *pbVar11" (identifier "bVar12") (= "=") (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + 1" (identifier "pbVar9") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" (identifier "pbVar11") (= "=") (binary_expression "pbVar11 + 1" (identifier "pbVar11") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar12)" (( "(") (identifier "bVar12") () ")")) (; ";")) (expression_statement "bVar14 = false;" (assignment_expression "bVar14 = false" (identifier "bVar14") (= "=") (false "false")) (; ";")) (expression_statement "bVar12 = (!bVar13 && !bVar12) == bVar13;" (assignment_expression "bVar12 = (!bVar13 && !bVar12) == bVar13" (identifier "bVar12") (= "=") (binary_expression "(!bVar13 && !bVar12) == bVar13" (parenthesized_expression "(!bVar13 && !bVar12)" (( "(") (binary_expression "!bVar13 && !bVar12" (unary_expression "!bVar13" (! "!") (identifier "bVar13")) (&& "&&") (unary_expression "!bVar12" (! "!") (identifier "bVar12"))) () ")")) (== "==") (identifier "bVar13"))) (; ";")) (if_statement "if (bVar12) {\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }" (if "if") (parenthesized_expression "(bVar12)" (( "(") (identifier "bVar12") () ")")) (compound_statement "{\n          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);\n          DAT_001c0e34 = 0;\n          if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }\n          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }\n          DAT_001c0e30 = 0xffffffff;\n          DAT_001c0e34 = 0xffffffff;\n          return 1;\n        }" ({ "{") (expression_statement "DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);" (assignment_expression "DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0)" (identifier "DAT_001c0e30") (= "=") (call_expression "strtoul((char *)(pbVar3 + 0xb),local_20,0)" (identifier "strtoul") (argument_list "((char *)(pbVar3 + 0xb),local_20,0)" (( "(") (cast_expression "(char *)(pbVar3 + 0xb)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pbVar3 + 0xb)" (( "(") (binary_expression "pbVar3 + 0xb" (identifier "pbVar3") (+ "+") (number_literal "0xb")) () ")"))) (, ",") (identifier "local_20") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "DAT_001c0e34 = 0;" (assignment_expression "DAT_001c0e34 = 0" (identifier "DAT_001c0e34") (= "=") (number_literal "0")) (; ";")) (if_statement "if (*local_20[0] != '\0') {\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }" (if "if") (parenthesized_expression "(*local_20[0] != '\0')" (( "(") (binary_expression "*local_20[0] != '\0'" (pointer_expression "*local_20[0]" (* "*") (subscript_expression "local_20[0]" (identifier "local_20") ([ "[") (number_literal "0") (] "]"))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n            iVar8 = *(int *)puVar1;\n            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);\n            FUN_00034d60(uVar7,iVar8 + 0xb);\n          }" ({ "{") (expression_statement "iVar8 = *(int *)puVar1;" (assignment_expression "iVar8 = *(int *)puVar1" (identifier "iVar8") (= "=") (pointer_expression "*(int *)puVar1" (* "*") (cast_expression "(int *)puVar1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar1")))) (; ";")) (expression_statement "uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);" (assignment_expression "uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb)" (identifier "uVar7") (= "=") (call_expression "dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb)" (identifier "dcgettext") (argument_list "(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb)" (( "(") (number_literal "0") (, ",") (string_literal ""%F%P: invalid stack size `%s\'\n"" (" """) (string_content "%F%P: invalid stack size `%s") (escape_sequence "\'") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") (, ",") (binary_expression "pbVar3 + 0xb" (identifier "pbVar3") (+ "+") (number_literal "0xb")) () ")")))) (; ";")) (expression_statement "FUN_00034d60(uVar7,iVar8 + 0xb);" (call_expression "FUN_00034d60(uVar7,iVar8 + 0xb)" (identifier "FUN_00034d60") (argument_list "(uVar7,iVar8 + 0xb)" (( "(") (identifier "uVar7") (, ",") (binary_expression "iVar8 + 0xb" (identifier "iVar8") (+ "+") (number_literal "0xb")) () ")"))) (; ";")) (} "}"))) (if_statement "if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {\n            return 1;\n          }" (if "if") (parenthesized_expression "(DAT_001c0e34 != 0 || DAT_001c0e30 != 0)" (( "(") (binary_expression "DAT_001c0e34 != 0 || DAT_001c0e30 != 0" (binary_expression "DAT_001c0e34 != 0" (identifier "DAT_001c0e34") (!= "!=") (number_literal "0")) (|| "||") (binary_expression "DAT_001c0e30 != 0" (identifier "DAT_001c0e30") (!= "!=") (number_literal "0"))) () ")")) (compound_statement "{\n            return 1;\n          }" ({ "{") (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "DAT_001c0e30 = 0xffffffff;" (assignment_expression "DAT_001c0e30 = 0xffffffff" (identifier "DAT_001c0e30") (= "=") (number_literal "0xffffffff")) (; ";")) (expression_statement "DAT_001c0e34 = 0xffffffff;" (assignment_expression "DAT_001c0e34 = 0xffffffff" (identifier "DAT_001c0e34") (= "=") (number_literal "0xffffffff")) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = 10;" (assignment_expression "iVar8 = 10" (identifier "iVar8") (= "=") (number_literal "10")) (; ";")) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" (identifier "pbVar9") (= "=") (identifier "pbVar3")) (; ";")) (expression_statement "pbVar11 = (byte *)0xa55ed;" (assignment_expression "pbVar11 = (byte *)0xa55ed" (identifier "pbVar11") (= "=") (cast_expression "(byte *)0xa55ed" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xa55ed"))) (; ";")) (do_statement "do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);" (do "do") (compound_statement "{\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        }" ({ "{") (if_statement "if (iVar8 == 0) break;" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" (identifier "iVar8") (= "=") (binary_expression "iVar8 + -1" (identifier "iVar8") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar14 = *pbVar9 < *pbVar11;" (assignment_expression "bVar14 = *pbVar9 < *pbVar11" (identifier "bVar14") (= "=") (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")))) (; ";")) (expression_statement "bVar12 = *pbVar9 == *pbVar11;" (assignment_expression "bVar12 = *pbVar9 == *pbVar11" (identifier "bVar12") (= "=") (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + 1" (identifier "pbVar9") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" (identifier "pbVar11") (= "=") (binary_expression "pbVar11 + 1" (identifier "pbVar11") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar12)" (( "(") (identifier "bVar12") () ")")) (; ";")) (if_statement "if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }" (if "if") (parenthesized_expression "((!bVar14 && !bVar12) == bVar14)" (( "(") (binary_expression "(!bVar14 && !bVar12) == bVar14" (parenthesized_expression "(!bVar14 && !bVar12)" (( "(") (binary_expression "!bVar14 && !bVar12" (unary_expression "!bVar14" (! "!") (identifier "bVar14")) (&& "&&") (unary_expression "!bVar12" (! "!") (identifier "bVar12"))) () ")")) (== "==") (identifier "bVar14")) () ")")) (compound_statement "{\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;\n          return 1;\n        }" ({ "{") (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000" (identifier "_DAT_001c0e24") (= "=") (binary_expression "_DAT_001c0e24 & 0xfffe7fff | 0x8000" (binary_expression "_DAT_001c0e24 & 0xfffe7fff" (identifier "_DAT_001c0e24") (& "&") (number_literal "0xfffe7fff")) (| "|") (number_literal "0x8000"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcmp((char *)pbVar3,"noexecstack");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"noexecstack")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"noexecstack")" (identifier "strcmp") (argument_list "((char *)pbVar3,"noexecstack")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""noexecstack"" (" """) (string_content "noexecstack") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;\n          return 1;\n        }" ({ "{") (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000" (identifier "_DAT_001c0e24") (= "=") (binary_expression "_DAT_001c0e24 & 0xfffe7fff | 0x10000" (binary_expression "_DAT_001c0e24 & 0xfffe7fff" (identifier "_DAT_001c0e24") (& "&") (number_literal "0xfffe7fff")) (| "|") (number_literal "0x10000"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcmp((char *)pbVar3,"globalaudit");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"globalaudit")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"globalaudit")" (identifier "strcmp") (argument_list "((char *)pbVar3,"globalaudit")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""globalaudit"" (" """) (string_content "globalaudit") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;\n          return 1;\n        }" ({ "{") (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 0x1000000;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 0x1000000" (identifier "DAT_001c0e9c") (= "=") (binary_expression "DAT_001c0e9c | 0x1000000" (identifier "DAT_001c0e9c") (| "|") (number_literal "0x1000000"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcmp((char *)pbVar3,"global");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"global")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"global")" (identifier "strcmp") (argument_list "((char *)pbVar3,"global")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""global"" (" """) (string_content "global") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 2;\n          return 1;\n        }" ({ "{") (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 2;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 2" (identifier "DAT_001c0e9c") (= "=") (binary_expression "DAT_001c0e9c | 2" (identifier "DAT_001c0e9c") (| "|") (number_literal "2"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcmp((char *)pbVar3,"initfirst");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"initfirst")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"initfirst")" (identifier "strcmp") (argument_list "((char *)pbVar3,"initfirst")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""initfirst"" (" """) (string_content "initfirst") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 0x20;\n          return 1;\n        }" ({ "{") (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 0x20;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 0x20" (identifier "DAT_001c0e9c") (= "=") (binary_expression "DAT_001c0e9c | 0x20" (identifier "DAT_001c0e9c") (| "|") (number_literal "0x20"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcmp((char *)pbVar3,"interpose");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"interpose")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"interpose")" (identifier "strcmp") (argument_list "((char *)pbVar3,"interpose")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""interpose"" (" """) (string_content "interpose") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 0x400;\n          return 1;\n        }" ({ "{") (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 0x400;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 0x400" (identifier "DAT_001c0e9c") (= "=") (binary_expression "DAT_001c0e9c | 0x400" (identifier "DAT_001c0e9c") (| "|") (number_literal "0x400"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcmp((char *)pbVar3,"loadfltr");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"loadfltr")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"loadfltr")" (identifier "strcmp") (argument_list "((char *)pbVar3,"loadfltr")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""loadfltr"" (" """) (string_content "loadfltr") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 0x10;\n          return 1;\n        }" ({ "{") (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 0x10;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 0x10" (identifier "DAT_001c0e9c") (= "=") (binary_expression "DAT_001c0e9c | 0x10" (identifier "DAT_001c0e9c") (| "|") (number_literal "0x10"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcmp((char *)pbVar3,"nodefaultlib");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"nodefaultlib")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"nodefaultlib")" (identifier "strcmp") (argument_list "((char *)pbVar3,"nodefaultlib")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""nodefaultlib"" (" """) (string_content "nodefaultlib") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 0x800;\n          return 1;\n        }" ({ "{") (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 0x800;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 0x800" (identifier "DAT_001c0e9c") (= "=") (binary_expression "DAT_001c0e9c | 0x800" (identifier "DAT_001c0e9c") (| "|") (number_literal "0x800"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcmp((char *)pbVar3,"nodelete");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"nodelete")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"nodelete")" (identifier "strcmp") (argument_list "((char *)pbVar3,"nodelete")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""nodelete"" (" """) (string_content "nodelete") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 8;\n          return 1;\n        }" ({ "{") (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 8;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 8" (identifier "DAT_001c0e9c") (= "=") (binary_expression "DAT_001c0e9c | 8" (identifier "DAT_001c0e9c") (| "|") (number_literal "8"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcmp((char *)pbVar3,"nodlopen");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"nodlopen")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"nodlopen")" (identifier "strcmp") (argument_list "((char *)pbVar3,"nodlopen")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""nodlopen"" (" """) (string_content "nodlopen") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 0x40;\n          return 1;\n        }" ({ "{") (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 0x40;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 0x40" (identifier "DAT_001c0e9c") (= "=") (binary_expression "DAT_001c0e9c | 0x40" (identifier "DAT_001c0e9c") (| "|") (number_literal "0x40"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcmp((char *)pbVar3,"nodump");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"nodump")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"nodump")" (identifier "strcmp") (argument_list "((char *)pbVar3,"nodump")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""nodump"" (" """) (string_content "nodump") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          DAT_001c0e9c = DAT_001c0e9c | 0x1000;\n          return 1;\n        }" ({ "{") (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 0x1000;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 0x1000" (identifier "DAT_001c0e9c") (= "=") (binary_expression "DAT_001c0e9c | 0x1000" (identifier "DAT_001c0e9c") (| "|") (number_literal "0x1000"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcmp((char *)pbVar3,"now");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"now")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"now")" (identifier "strcmp") (argument_list "((char *)pbVar3,"now")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""now"" (" """) (string_content "now") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          _DAT_001c0e94 = _DAT_001c0e94 | 8;\n          DAT_001c0e9c = DAT_001c0e9c | 1;\n          return 1;\n        }" ({ "{") (expression_statement "_DAT_001c0e94 = _DAT_001c0e94 | 8;" (assignment_expression "_DAT_001c0e94 = _DAT_001c0e94 | 8" (identifier "_DAT_001c0e94") (= "=") (binary_expression "_DAT_001c0e94 | 8" (identifier "_DAT_001c0e94") (| "|") (number_literal "8"))) (; ";")) (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 1;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 1" (identifier "DAT_001c0e9c") (= "=") (binary_expression "DAT_001c0e9c | 1" (identifier "DAT_001c0e9c") (| "|") (number_literal "1"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcmp((char *)pbVar3,"lazy");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"lazy")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"lazy")" (identifier "strcmp") (argument_list "((char *)pbVar3,"lazy")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""lazy"" (" """) (string_content "lazy") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;\n          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;\n          return 1;\n        }" ({ "{") (expression_statement "_DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;" (assignment_expression "_DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7" (identifier "_DAT_001c0e94") (= "=") (binary_expression "_DAT_001c0e94 & 0xfffffff7" (identifier "_DAT_001c0e94") (& "&") (number_literal "0xfffffff7"))) (; ";")) (expression_statement "DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe" (identifier "DAT_001c0e9c") (= "=") (binary_expression "DAT_001c0e9c & 0xfffffffe" (identifier "DAT_001c0e9c") (& "&") (number_literal "0xfffffffe"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcmp((char *)pbVar3,"origin");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"origin")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"origin")" (identifier "strcmp") (argument_list "((char *)pbVar3,"origin")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""origin"" (" """) (string_content "origin") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          _DAT_001c0e94 = _DAT_001c0e94 | 1;\n          DAT_001c0e9c = DAT_001c0e9c | 0x80;\n          return 1;\n        }" ({ "{") (expression_statement "_DAT_001c0e94 = _DAT_001c0e94 | 1;" (assignment_expression "_DAT_001c0e94 = _DAT_001c0e94 | 1" (identifier "_DAT_001c0e94") (= "=") (binary_expression "_DAT_001c0e94 | 1" (identifier "_DAT_001c0e94") (| "|") (number_literal "1"))) (; ";")) (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 0x80;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 0x80" (identifier "DAT_001c0e9c") (= "=") (binary_expression "DAT_001c0e9c | 0x80" (identifier "DAT_001c0e9c") (| "|") (number_literal "0x80"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcmp((char *)pbVar3,"combreloc");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"combreloc")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"combreloc")" (identifier "strcmp") (argument_list "((char *)pbVar3,"combreloc")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""combreloc"" (" """) (string_content "combreloc") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;\n          return 1;\n        }" ({ "{") (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 | 0x40;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 | 0x40" (identifier "_DAT_001c0e24") (= "=") (binary_expression "_DAT_001c0e24 | 0x40" (identifier "_DAT_001c0e24") (| "|") (number_literal "0x40"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcmp((char *)pbVar3,"nocombreloc");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"nocombreloc")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"nocombreloc")" (identifier "strcmp") (argument_list "((char *)pbVar3,"nocombreloc")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""nocombreloc"" (" """) (string_content "nocombreloc") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;\n          return 1;\n        }" ({ "{") (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf" (identifier "_DAT_001c0e24") (= "=") (binary_expression "_DAT_001c0e24 & 0xffffffbf" (identifier "_DAT_001c0e24") (& "&") (number_literal "0xffffffbf"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcmp((char *)pbVar3,"nocopyreloc");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"nocopyreloc")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"nocopyreloc")" (identifier "strcmp") (argument_list "((char *)pbVar3,"nocopyreloc")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""nocopyreloc"" (" """) (string_content "nocopyreloc") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;\n          return 1;\n        }" ({ "{") (expression_statement "DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;" (assignment_expression "DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8" (field_expression "DAT_001c0e20._0_1_" (identifier "DAT_001c0e20") (. ".") (field_identifier "_0_1_")) (= "=") (binary_expression "(byte)DAT_001c0e20 | 8" (cast_expression "(byte)DAT_001c0e20" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "DAT_001c0e20")) (| "|") (number_literal "8"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcmp((char *)pbVar3,"relro");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"relro")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"relro")" (identifier "strcmp") (argument_list "((char *)pbVar3,"relro")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""relro"" (" """) (string_content "relro") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;\n          return 1;\n        }" ({ "{") (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000" (field_expression "DAT_001c0e20._2_2_" (identifier "DAT_001c0e20") (. ".") (field_identifier "_2_2_")) (= "=") (binary_expression "DAT_001c0e20._2_2_ | 0x1000" (field_expression "DAT_001c0e20._2_2_" (identifier "DAT_001c0e20") (. ".") (field_identifier "_2_2_")) (| "|") (number_literal "0x1000"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcmp((char *)pbVar3,"norelro");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"norelro")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"norelro")" (identifier "strcmp") (argument_list "((char *)pbVar3,"norelro")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""norelro"" (" """) (string_content "norelro") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;\n          return 1;\n        }" ({ "{") (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff" (field_expression "DAT_001c0e20._2_2_" (identifier "DAT_001c0e20") (. ".") (field_identifier "_2_2_")) (= "=") (binary_expression "DAT_001c0e20._2_2_ & 0xefff" (field_expression "DAT_001c0e20._2_2_" (identifier "DAT_001c0e20") (. ".") (field_identifier "_2_2_")) (& "&") (number_literal "0xefff"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcmp((char *)pbVar3,"separate-code");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"separate-code")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"separate-code")" (identifier "strcmp") (argument_list "((char *)pbVar3,"separate-code")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""separate-code"" (" """) (string_content "separate-code") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;\n          return 1;\n        }" ({ "{") (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000" (field_expression "DAT_001c0e20._2_2_" (identifier "DAT_001c0e20") (. ".") (field_identifier "_2_2_")) (= "=") (binary_expression "DAT_001c0e20._2_2_ | 0x2000" (field_expression "DAT_001c0e20._2_2_" (identifier "DAT_001c0e20") (. ".") (field_identifier "_2_2_")) (| "|") (number_literal "0x2000"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcmp((char *)pbVar3,"noseparate-code");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"noseparate-code")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"noseparate-code")" (identifier "strcmp") (argument_list "((char *)pbVar3,"noseparate-code")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""noseparate-code"" (" """) (string_content "noseparate-code") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;\n          return 1;\n        }" ({ "{") (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff" (field_expression "DAT_001c0e20._2_2_" (identifier "DAT_001c0e20") (. ".") (field_identifier "_2_2_")) (= "=") (binary_expression "DAT_001c0e20._2_2_ & 0xdfff" (field_expression "DAT_001c0e20._2_2_" (identifier "DAT_001c0e20") (. ".") (field_identifier "_2_2_")) (& "&") (number_literal "0xdfff"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcmp((char *)pbVar3,"common");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"common")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"common")" (identifier "strcmp") (argument_list "((char *)pbVar3,"common")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""common"" (" """) (string_content "common") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;\n          return 1;\n        }" ({ "{") (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2" (field_expression "DAT_001c0e20._2_2_" (identifier "DAT_001c0e20") (. ".") (field_identifier "_2_2_")) (= "=") (binary_expression "DAT_001c0e20._2_2_ & 0xfff9 | 2" (binary_expression "DAT_001c0e20._2_2_ & 0xfff9" (field_expression "DAT_001c0e20._2_2_" (identifier "DAT_001c0e20") (. ".") (field_identifier "_2_2_")) (& "&") (number_literal "0xfff9")) (| "|") (number_literal "2"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcmp((char *)pbVar3,"nocommon");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"nocommon")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"nocommon")" (identifier "strcmp") (argument_list "((char *)pbVar3,"nocommon")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""nocommon"" (" """) (string_content "nocommon") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;\n          return 1;\n        }" ({ "{") (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4" (field_expression "DAT_001c0e20._2_2_" (identifier "DAT_001c0e20") (. ".") (field_identifier "_2_2_")) (= "=") (binary_expression "DAT_001c0e20._2_2_ & 0xfff9 | 4" (binary_expression "DAT_001c0e20._2_2_ & 0xfff9" (field_expression "DAT_001c0e20._2_2_" (identifier "DAT_001c0e20") (. ".") (field_identifier "_2_2_")) (& "&") (number_literal "0xfff9")) (| "|") (number_literal "4"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcmp((char *)pbVar3,"text");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"text")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"text")" (identifier "strcmp") (argument_list "((char *)pbVar3,"text")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""text"" (" """) (string_content "text") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          _DAT_001c0e24 = _DAT_001c0e24 | 2;\n          return 1;\n        }" ({ "{") (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 | 2;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 | 2" (identifier "_DAT_001c0e24") (= "=") (binary_expression "_DAT_001c0e24 | 2" (identifier "_DAT_001c0e24") (| "|") (number_literal "2"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcmp((char *)pbVar3,"notext");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"notext")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"notext")" (identifier "strcmp") (argument_list "((char *)pbVar3,"notext")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""notext"" (" """) (string_content "notext") (" """)) () ")")))) (; ";")) (if_statement "if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }" (if "if") (parenthesized_expression "((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0))" (( "(") (binary_expression "(iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)" (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)" (( "(") (comma_expression "iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"textoff")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"textoff")" (identifier "strcmp") (argument_list "((char *)pbVar3,"textoff")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""textoff"" (" """) (string_content "textoff") (" """)) () ")")))) (, ",") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;\n          return 1;\n        }" ({ "{") (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd" (identifier "_DAT_001c0e24") (= "=") (binary_expression "_DAT_001c0e24 & 0xfffffffd" (identifier "_DAT_001c0e24") (& "&") (number_literal "0xfffffffd"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"dynamic-undefined-weak")" (identifier "strcmp") (argument_list "((char *)pbVar3,"dynamic-undefined-weak")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""dynamic-undefined-weak"" (" """) (string_content "dynamic-undefined-weak") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e84 = 1;\n          return 1;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          DAT_001c0e84 = 1;\n          return 1;\n        }" ({ "{") (expression_statement "DAT_001c0e84 = 1;" (assignment_expression "DAT_001c0e84 = 1" (identifier "DAT_001c0e84") (= "=") (number_literal "1")) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");" (assignment_expression "iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak")" (identifier "iVar8") (= "=") (call_expression "strcmp((char *)pbVar3,"nodynamic-undefined-weak")" (identifier "strcmp") (argument_list "((char *)pbVar3,"nodynamic-undefined-weak")" (( "(") (cast_expression "(char *)pbVar3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar3")) (, ",") (string_literal ""nodynamic-undefined-weak"" (" """) (string_content "nodynamic-undefined-weak") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e84 = 0;\n          return 1;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          DAT_001c0e84 = 0;\n          return 1;\n        }" ({ "{") (expression_statement "DAT_001c0e84 = 0;" (assignment_expression "DAT_001c0e84 = 0" (identifier "DAT_001c0e84") (= "=") (number_literal "0")) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "pcVar10 = "%P: warning: -z %s ignored\n";" (assignment_expression "pcVar10 = "%P: warning: -z %s ignored\n"" (identifier "pcVar10") (= "=") (string_literal ""%P: warning: -z %s ignored\n"" (" """) (string_content "%P: warning: -z %s ignored") (escape_sequence "\n") (" """))) (; ";")) (labeled_statement "LAB_0004fd61:\n        uVar7 = dcgettext(0,pcVar10,5);" (statement_identifier "LAB_0004fd61") (: ":") (expression_statement "uVar7 = dcgettext(0,pcVar10,5);" (assignment_expression "uVar7 = dcgettext(0,pcVar10,5)" (identifier "uVar7") (= "=") (call_expression "dcgettext(0,pcVar10,5)" (identifier "dcgettext") (argument_list "(0,pcVar10,5)" (( "(") (number_literal "0") (, ",") (identifier "pcVar10") (, ",") (number_literal "5") () ")")))) (; ";"))) (expression_statement "FUN_00034d60(uVar7,pbVar3);" (call_expression "FUN_00034d60(uVar7,pbVar3)" (identifier "FUN_00034d60") (argument_list "(uVar7,pbVar3)" (( "(") (identifier "uVar7") (, ",") (identifier "pbVar3") () ")"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);" (assignment_expression "DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0)" (identifier "DAT_001c0f8c") (= "=") (call_expression "strtoul((char *)(pbVar3 + 0x11),local_20,0)" (identifier "strtoul") (argument_list "((char *)(pbVar3 + 0x11),local_20,0)" (( "(") (cast_expression "(char *)(pbVar3 + 0x11)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pbVar3 + 0x11)" (( "(") (binary_expression "pbVar3 + 0x11" (identifier "pbVar3") (+ "+") (number_literal "0x11")) () ")"))) (, ",") (identifier "local_20") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "DAT_001c0f90 = 0;" (assignment_expression "DAT_001c0f90 = 0" (identifier "DAT_001c0f90") (= "=") (number_literal "0")) (; ";")) (if_statement "if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {\n        DAT_001c0f90 = 0;\n        return 1;\n      }" (if "if") (parenthesized_expression "((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0))" (( "(") (binary_expression "(*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)" (parenthesized_expression "(*local_20[0] == '\0')" (( "(") (binary_expression "*local_20[0] == '\0'" (pointer_expression "*local_20[0]" (* "*") (subscript_expression "local_20[0]" (identifier "local_20") ([ "[") (number_literal "0") (] "]"))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)" (( "(") (binary_expression "(DAT_001c0f8c & DAT_001c0f8c - 1) == 0" (parenthesized_expression "(DAT_001c0f8c & DAT_001c0f8c - 1)" (( "(") (binary_expression "DAT_001c0f8c & DAT_001c0f8c - 1" (identifier "DAT_001c0f8c") (& "&") (binary_expression "DAT_001c0f8c - 1" (identifier "DAT_001c0f8c") (- "-") (number_literal "1"))) () ")")) (== "==") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n        DAT_001c0f90 = 0;\n        return 1;\n      }" ({ "{") (expression_statement "DAT_001c0f90 = 0;" (assignment_expression "DAT_001c0f90 = 0" (identifier "DAT_001c0f90") (= "=") (number_literal "0")) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "pcVar4 = "%F%P: invalid common page size `%s\'\n";" (assignment_expression "pcVar4 = "%F%P: invalid common page size `%s\'\n"" (identifier "pcVar4") (= "=") (string_literal ""%F%P: invalid common page size `%s\'\n"" (" """) (string_content "%F%P: invalid common page size `%s") (escape_sequence "\'") (escape_sequence "\n") (" """))) (; ";")) (expression_statement "pcVar10 = (char *)(*(int *)puVar1 + 0x11);" (assignment_expression "pcVar10 = (char *)(*(int *)puVar1 + 0x11)" (identifier "pcVar10") (= "=") (cast_expression "(char *)(*(int *)puVar1 + 0x11)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)puVar1 + 0x11)" (( "(") (binary_expression "*(int *)puVar1 + 0x11" (pointer_expression "*(int *)puVar1" (* "*") (cast_expression "(int *)puVar1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar1"))) (+ "+") (number_literal "0x11")) () ")")))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n    if (param_1 == 0x192) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;\n      DAT_001c0e9c = DAT_001c0e9c | 4;\n      return 1;\n    }\n    if (0x192 < (int)param_1) {\n      if (param_1 == 0x196) {\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if ((int)param_1 < 0x197) {\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (param_1 == 0x198) {\n        FUN_0004f470();\n        return 1;\n      }\n      if ((int)param_1 < 0x198) {\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }\n      if (param_1 != 0x199) {\n        return 0;\n      }\n      pcVar10 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar10,"none");\n      if (iVar8 == 0) {\n        DAT_001c0e2c = 0;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar10,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      DAT_001c0e2c = 5;\n      return 1;\n    }\n    if (param_1 == 0x14d) {\n      DAT_001bfd3c = 0xffffffff;\n      return 1;\n    }\n    if (0x14d < (int)param_1) {\n      if (param_1 == 400) {\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }\n      if ((int)param_1 < 0x191) {\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x100;\n      return 1;\n    }\n    if (param_1 != 0x14b) {\n      if (param_1 == 0x14c) {\n        DAT_001bfd34 = 0;\n        return 1;\n      }\n      return 0;\n    }\n    DAT_001bfd34 = 1;\n    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      DAT_001bfd34 = 1;\n      return 1;\n    }\n    DAT_001bfd44 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n    DAT_001bfd48 = 0;\n    if (((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&\n       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)) {\n      DAT_001bfd48 = 0;\n      return 1;\n    }\n    pcVar10 = *(char **)puVar1;\n    pcVar4 = "%F%P: invalid pagesize `%s\'\n";\n  }" (else "else") (compound_statement "{\n    if (param_1 == 0x192) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;\n      DAT_001c0e9c = DAT_001c0e9c | 4;\n      return 1;\n    }\n    if (0x192 < (int)param_1) {\n      if (param_1 == 0x196) {\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if ((int)param_1 < 0x197) {\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (param_1 == 0x198) {\n        FUN_0004f470();\n        return 1;\n      }\n      if ((int)param_1 < 0x198) {\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }\n      if (param_1 != 0x199) {\n        return 0;\n      }\n      pcVar10 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar10,"none");\n      if (iVar8 == 0) {\n        DAT_001c0e2c = 0;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar10,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      DAT_001c0e2c = 5;\n      return 1;\n    }\n    if (param_1 == 0x14d) {\n      DAT_001bfd3c = 0xffffffff;\n      return 1;\n    }\n    if (0x14d < (int)param_1) {\n      if (param_1 == 400) {\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }\n      if ((int)param_1 < 0x191) {\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x100;\n      return 1;\n    }\n    if (param_1 != 0x14b) {\n      if (param_1 == 0x14c) {\n        DAT_001bfd34 = 0;\n        return 1;\n      }\n      return 0;\n    }\n    DAT_001bfd34 = 1;\n    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      DAT_001bfd34 = 1;\n      return 1;\n    }\n    DAT_001bfd44 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);\n    DAT_001bfd48 = 0;\n    if (((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&\n       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)) {\n      DAT_001bfd48 = 0;\n      return 1;\n    }\n    pcVar10 = *(char **)puVar1;\n    pcVar4 = "%F%P: invalid pagesize `%s\'\n";\n  }" ({ "{") (if_statement "if (param_1 == 0x192) {\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;\n      DAT_001c0e9c = DAT_001c0e9c | 4;\n      return 1;\n    }" (if "if") (parenthesized_expression "(param_1 == 0x192)" (( "(") (binary_expression "param_1 == 0x192" (identifier "param_1") (== "==") (number_literal "0x192")) () ")")) (compound_statement "{\n      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;\n      DAT_001c0e9c = DAT_001c0e9c | 4;\n      return 1;\n    }" ({ "{") (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0" (field_expression "DAT_001c0e20._2_2_" (identifier "DAT_001c0e20") (. ".") (field_identifier "_2_2_")) (= "=") (binary_expression "DAT_001c0e20._2_2_ | 0x1e0" (field_expression "DAT_001c0e20._2_2_" (identifier "DAT_001c0e20") (. ".") (field_identifier "_2_2_")) (| "|") (number_literal "0x1e0"))) (; ";")) (expression_statement "DAT_001c0e9c = DAT_001c0e9c | 4;" (assignment_expression "DAT_001c0e9c = DAT_001c0e9c | 4" (identifier "DAT_001c0e9c") (= "=") (binary_expression "DAT_001c0e9c | 4" (identifier "DAT_001c0e9c") (| "|") (number_literal "4"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (if_statement "if (0x192 < (int)param_1) {\n      if (param_1 == 0x196) {\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if ((int)param_1 < 0x197) {\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (param_1 == 0x198) {\n        FUN_0004f470();\n        return 1;\n      }\n      if ((int)param_1 < 0x198) {\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }\n      if (param_1 != 0x199) {\n        return 0;\n      }\n      pcVar10 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar10,"none");\n      if (iVar8 == 0) {\n        DAT_001c0e2c = 0;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar10,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      DAT_001c0e2c = 5;\n      return 1;\n    }" (if "if") (parenthesized_expression "(0x192 < (int)param_1)" (( "(") (binary_expression "0x192 < (int)param_1" (number_literal "0x192") (< "<") (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1"))) () ")")) (compound_statement "{\n      if (param_1 == 0x196) {\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }\n      if ((int)param_1 < 0x197) {\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }\n      if (param_1 == 0x198) {\n        FUN_0004f470();\n        return 1;\n      }\n      if ((int)param_1 < 0x198) {\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }\n      if (param_1 != 0x199) {\n        return 0;\n      }\n      pcVar10 = *(char **)PTR_optarg_001befe4;\n      iVar8 = strcasecmp(pcVar10,"none");\n      if (iVar8 == 0) {\n        DAT_001c0e2c = 0;\n        return 1;\n      }\n      iVar8 = strcasecmp(pcVar10,"zlib");\n      if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }\n      DAT_001c0e2c = 5;\n      return 1;\n    }" ({ "{") (if_statement "if (param_1 == 0x196) {\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }" (if "if") (parenthesized_expression "(param_1 == 0x196)" (( "(") (binary_expression "param_1 == 0x196" (identifier "param_1") (== "==") (number_literal "0x196")) () ")")) (compound_statement "{\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        iVar8 = 5;\n        bVar12 = false;\n        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55a5;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);\n        bVar13 = false;\n        bVar12 = (!bVar12 && !bVar14) == bVar12;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }\n        iVar8 = 4;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a5597;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        bVar14 = false;\n        bVar12 = (!bVar13 && !bVar12) == bVar13;\n        if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }\n        iVar8 = 5;\n        pbVar9 = pbVar3;\n        pbVar11 = &DAT_000a55aa;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);\n        if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }\n        pcVar10 = "%F%P: invalid hash style `%s\'\n";\n        goto LAB_0004fd61;\n      }" ({ "{") (expression_statement "pbVar3 = *(byte **)PTR_optarg_001befe4;" (assignment_expression "pbVar3 = *(byte **)PTR_optarg_001befe4" (identifier "pbVar3") (= "=") (pointer_expression "*(byte **)PTR_optarg_001befe4" (* "*") (cast_expression "(byte **)PTR_optarg_001befe4" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR_optarg_001befe4")))) (; ";")) (expression_statement "iVar8 = 5;" (assignment_expression "iVar8 = 5" (identifier "iVar8") (= "=") (number_literal "5")) (; ";")) (expression_statement "bVar12 = false;" (assignment_expression "bVar12 = false" (identifier "bVar12") (= "=") (false "false")) (; ";")) (expression_statement "bVar14 = (_DAT_001c0e24 & 0xf3) == 0;" (assignment_expression "bVar14 = (_DAT_001c0e24 & 0xf3) == 0" (identifier "bVar14") (= "=") (binary_expression "(_DAT_001c0e24 & 0xf3) == 0" (parenthesized_expression "(_DAT_001c0e24 & 0xf3)" (( "(") (binary_expression "_DAT_001c0e24 & 0xf3" (identifier "_DAT_001c0e24") (& "&") (number_literal "0xf3")) () ")")) (== "==") (number_literal "0"))) (; ";")) (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3" (identifier "_DAT_001c0e24") (= "=") (binary_expression "_DAT_001c0e24 & 0xfffffff3" (identifier "_DAT_001c0e24") (& "&") (number_literal "0xfffffff3"))) (; ";")) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" (identifier "pbVar9") (= "=") (identifier "pbVar3")) (; ";")) (expression_statement "pbVar11 = &DAT_000a55a5;" (assignment_expression "pbVar11 = &DAT_000a55a5" (identifier "pbVar11") (= "=") (pointer_expression "&DAT_000a55a5" (& "&") (identifier "DAT_000a55a5"))) (; ";")) (do_statement "do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar14);" (do "do") (compound_statement "{\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar12 = *pbVar9 < *pbVar11;\n          bVar14 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        }" ({ "{") (if_statement "if (iVar8 == 0) break;" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" (identifier "iVar8") (= "=") (binary_expression "iVar8 + -1" (identifier "iVar8") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar12 = *pbVar9 < *pbVar11;" (assignment_expression "bVar12 = *pbVar9 < *pbVar11" (identifier "bVar12") (= "=") (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")))) (; ";")) (expression_statement "bVar14 = *pbVar9 == *pbVar11;" (assignment_expression "bVar14 = *pbVar9 == *pbVar11" (identifier "bVar14") (= "=") (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + 1" (identifier "pbVar9") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" (identifier "pbVar11") (= "=") (binary_expression "pbVar11 + 1" (identifier "pbVar11") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar14)" (( "(") (identifier "bVar14") () ")")) (; ";")) (expression_statement "bVar13 = false;" (assignment_expression "bVar13 = false" (identifier "bVar13") (= "=") (false "false")) (; ";")) (expression_statement "bVar12 = (!bVar12 && !bVar14) == bVar12;" (assignment_expression "bVar12 = (!bVar12 && !bVar14) == bVar12" (identifier "bVar12") (= "=") (binary_expression "(!bVar12 && !bVar14) == bVar12" (parenthesized_expression "(!bVar12 && !bVar14)" (( "(") (binary_expression "!bVar12 && !bVar14" (unary_expression "!bVar12" (! "!") (identifier "bVar12")) (&& "&&") (unary_expression "!bVar14" (! "!") (identifier "bVar14"))) () ")")) (== "==") (identifier "bVar12"))) (; ";")) (if_statement "if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }" (if "if") (parenthesized_expression "(bVar12)" (( "(") (identifier "bVar12") () ")")) (compound_statement "{\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;\n          return 1;\n        }" ({ "{") (expression_statement "_DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;" (assignment_expression "_DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4" (identifier "_DAT_001c0e24") (= "=") (binary_expression "CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4" (binary_expression "CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3" (call_expression "CONCAT31(_DAT_001c0e25,uVar2)" (identifier "CONCAT31") (argument_list "(_DAT_001c0e25,uVar2)" (( "(") (identifier "_DAT_001c0e25") (, ",") (identifier "uVar2") () ")"))) (& "&") (number_literal "0xfffffff3")) (| "|") (number_literal "4"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" (identifier "iVar8") (= "=") (number_literal "4")) (; ";")) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" (identifier "pbVar9") (= "=") (identifier "pbVar3")) (; ";")) (expression_statement "pbVar11 = &DAT_000a5597;" (assignment_expression "pbVar11 = &DAT_000a5597" (identifier "pbVar11") (= "=") (pointer_expression "&DAT_000a5597" (& "&") (identifier "DAT_000a5597"))) (; ";")) (do_statement "do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);" (do "do") (compound_statement "{\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar13 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        }" ({ "{") (if_statement "if (iVar8 == 0) break;" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" (identifier "iVar8") (= "=") (binary_expression "iVar8 + -1" (identifier "iVar8") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar13 = *pbVar9 < *pbVar11;" (assignment_expression "bVar13 = *pbVar9 < *pbVar11" (identifier "bVar13") (= "=") (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")))) (; ";")) (expression_statement "bVar12 = *pbVar9 == *pbVar11;" (assignment_expression "bVar12 = *pbVar9 == *pbVar11" (identifier "bVar12") (= "=") (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + 1" (identifier "pbVar9") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" (identifier "pbVar11") (= "=") (binary_expression "pbVar11 + 1" (identifier "pbVar11") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar12)" (( "(") (identifier "bVar12") () ")")) (; ";")) (expression_statement "bVar14 = false;" (assignment_expression "bVar14 = false" (identifier "bVar14") (= "=") (false "false")) (; ";")) (expression_statement "bVar12 = (!bVar13 && !bVar12) == bVar13;" (assignment_expression "bVar12 = (!bVar13 && !bVar12) == bVar13" (identifier "bVar12") (= "=") (binary_expression "(!bVar13 && !bVar12) == bVar13" (parenthesized_expression "(!bVar13 && !bVar12)" (( "(") (binary_expression "!bVar13 && !bVar12" (unary_expression "!bVar13" (! "!") (identifier "bVar13")) (&& "&&") (unary_expression "!bVar12" (! "!") (identifier "bVar12"))) () ")")) (== "==") (identifier "bVar13"))) (; ";")) (if_statement "if (bVar12) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }" (if "if") (parenthesized_expression "(bVar12)" (( "(") (identifier "bVar12") () ")")) (compound_statement "{\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;\n          return 1;\n        }" ({ "{") (expression_statement "_DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;" (assignment_expression "_DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8" (identifier "_DAT_001c0e24") (= "=") (binary_expression "CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8" (binary_expression "CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3" (call_expression "CONCAT31(_DAT_001c0e25,uVar2)" (identifier "CONCAT31") (argument_list "(_DAT_001c0e25,uVar2)" (( "(") (identifier "_DAT_001c0e25") (, ",") (identifier "uVar2") () ")"))) (& "&") (number_literal "0xfffffff3")) (| "|") (number_literal "8"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = 5;" (assignment_expression "iVar8 = 5" (identifier "iVar8") (= "=") (number_literal "5")) (; ";")) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" (identifier "pbVar9") (= "=") (identifier "pbVar3")) (; ";")) (expression_statement "pbVar11 = &DAT_000a55aa;" (assignment_expression "pbVar11 = &DAT_000a55aa" (identifier "pbVar11") (= "=") (pointer_expression "&DAT_000a55aa" (& "&") (identifier "DAT_000a55aa"))) (; ";")) (do_statement "do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        } while (bVar12);" (do "do") (compound_statement "{\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar14 = *pbVar9 < *pbVar11;\n          bVar12 = *pbVar9 == *pbVar11;\n          pbVar9 = pbVar9 + 1;\n          pbVar11 = pbVar11 + 1;\n        }" ({ "{") (if_statement "if (iVar8 == 0) break;" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" (identifier "iVar8") (= "=") (binary_expression "iVar8 + -1" (identifier "iVar8") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar14 = *pbVar9 < *pbVar11;" (assignment_expression "bVar14 = *pbVar9 < *pbVar11" (identifier "bVar14") (= "=") (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")))) (; ";")) (expression_statement "bVar12 = *pbVar9 == *pbVar11;" (assignment_expression "bVar12 = *pbVar9 == *pbVar11" (identifier "bVar12") (= "=") (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + 1" (identifier "pbVar9") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" (identifier "pbVar11") (= "=") (binary_expression "pbVar11 + 1" (identifier "pbVar11") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar12)" (( "(") (identifier "bVar12") () ")")) (; ";")) (if_statement "if ((!bVar14 && !bVar12) == bVar14) {\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }" (if "if") (parenthesized_expression "((!bVar14 && !bVar12) == bVar14)" (( "(") (binary_expression "(!bVar14 && !bVar12) == bVar14" (parenthesized_expression "(!bVar14 && !bVar12)" (( "(") (binary_expression "!bVar14 && !bVar12" (unary_expression "!bVar14" (! "!") (identifier "bVar14")) (&& "&&") (unary_expression "!bVar12" (! "!") (identifier "bVar12"))) () ")")) (== "==") (identifier "bVar14")) () ")")) (compound_statement "{\n          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;\n          return 1;\n        }" ({ "{") (expression_statement "_DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;" (assignment_expression "_DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc" (identifier "_DAT_001c0e24") (= "=") (binary_expression "CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc" (binary_expression "CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3" (call_expression "CONCAT31(_DAT_001c0e25,uVar2)" (identifier "CONCAT31") (argument_list "(_DAT_001c0e25,uVar2)" (( "(") (identifier "_DAT_001c0e25") (, ",") (identifier "uVar2") () ")"))) (& "&") (number_literal "0xfffffff3")) (| "|") (number_literal "0xc"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "pcVar10 = "%F%P: invalid hash style `%s\'\n";" (assignment_expression "pcVar10 = "%F%P: invalid hash style `%s\'\n"" (identifier "pcVar10") (= "=") (string_literal ""%F%P: invalid hash style `%s\'\n"" (" """) (string_content "%F%P: invalid hash style `%s") (escape_sequence "\'") (escape_sequence "\n") (" """))) (; ";")) (goto_statement "goto LAB_0004fd61;" (goto "goto") (statement_identifier "LAB_0004fd61") (; ";")) (} "}"))) (if_statement "if ((int)param_1 < 0x197) {\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }" (if "if") (parenthesized_expression "((int)param_1 < 0x197)" (( "(") (binary_expression "(int)param_1 < 0x197" (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1")) (< "<") (number_literal "0x197")) () ")")) (compound_statement "{\n        if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }\n        if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }\n        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);\n        return 1;\n      }" ({ "{") (if_statement "if (param_1 == 0x194) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }" (if "if") (parenthesized_expression "(param_1 == 0x194)" (( "(") (binary_expression "param_1 == 0x194" (identifier "param_1") (== "==") (number_literal "0x194")) () ")")) (compound_statement "{\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;\n          return 1;\n        }" ({ "{") (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff" (field_expression "DAT_001c0e20._2_2_" (identifier "DAT_001c0e20") (. ".") (field_identifier "_2_2_")) (= "=") (binary_expression "DAT_001c0e20._2_2_ & 0x3fff" (field_expression "DAT_001c0e20._2_2_" (identifier "DAT_001c0e20") (. ".") (field_identifier "_2_2_")) (& "&") (number_literal "0x3fff"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (if_statement "if ((int)param_1 < 0x195) {\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }" (if "if") (parenthesized_expression "((int)param_1 < 0x195)" (( "(") (binary_expression "(int)param_1 < 0x195" (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1")) (< "<") (number_literal "0x195")) () ")")) (compound_statement "{\n          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;\n          return 1;\n        }" ({ "{") (expression_statement "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;" (assignment_expression "DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000" (field_expression "DAT_001c0e20._2_2_" (identifier "DAT_001c0e20") (. ".") (field_identifier "_2_2_")) (= "=") (binary_expression "DAT_001c0e20._2_2_ & 0x3fff | 0x4000" (binary_expression "DAT_001c0e20._2_2_ & 0x3fff" (field_expression "DAT_001c0e20._2_2_" (identifier "DAT_001c0e20") (. ".") (field_identifier "_2_2_")) (& "&") (number_literal "0x3fff")) (| "|") (number_literal "0x4000"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);" (call_expression "FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4)" (identifier "FUN_00026b90") (argument_list "(*(undefined4 *)PTR_optarg_001befe4)" (( "(") (pointer_expression "*(undefined4 *)PTR_optarg_001befe4" (* "*") (cast_expression "(undefined4 *)PTR_optarg_001befe4" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_optarg_001befe4"))) () ")"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (if_statement "if (param_1 == 0x198) {\n        FUN_0004f470();\n        return 1;\n      }" (if "if") (parenthesized_expression "(param_1 == 0x198)" (( "(") (binary_expression "param_1 == 0x198" (identifier "param_1") (== "==") (number_literal "0x198")) () ")")) (compound_statement "{\n        FUN_0004f470();\n        return 1;\n      }" ({ "{") (expression_statement "FUN_0004f470();" (call_expression "FUN_0004f470()" (identifier "FUN_0004f470") (argument_list "()" (( "(") () ")"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (if_statement "if ((int)param_1 < 0x198) {\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }" (if "if") (parenthesized_expression "((int)param_1 < 0x198)" (( "(") (binary_expression "(int)param_1 < 0x198" (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1")) (< "<") (number_literal "0x198")) () ")")) (compound_statement "{\n        if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }\n        pbVar3 = *(byte **)PTR_optarg_001befe4;\n        bVar12 = false;\n        bVar14 = pbVar3 == (byte *)0x0;\n        if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }\n        DAT_001c0aa4 = (void *)xstrdup(pbVar3);\n        return 1;\n      }" ({ "{") (if_statement "if (DAT_001c0aa4 != (void *)0x0) {\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }" (if "if") (parenthesized_expression "(DAT_001c0aa4 != (void *)0x0)" (( "(") (binary_expression "DAT_001c0aa4 != (void *)0x0" (identifier "DAT_001c0aa4") (!= "!=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          free(DAT_001c0aa4);\n          DAT_001c0aa4 = (void *)0x0;\n        }" ({ "{") (expression_statement "free(DAT_001c0aa4);" (call_expression "free(DAT_001c0aa4)" (identifier "free") (argument_list "(DAT_001c0aa4)" (( "(") (identifier "DAT_001c0aa4") () ")"))) (; ";")) (expression_statement "DAT_001c0aa4 = (void *)0x0;" (assignment_expression "DAT_001c0aa4 = (void *)0x0" (identifier "DAT_001c0aa4") (= "=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (expression_statement "pbVar3 = *(byte **)PTR_optarg_001befe4;" (assignment_expression "pbVar3 = *(byte **)PTR_optarg_001befe4" (identifier "pbVar3") (= "=") (pointer_expression "*(byte **)PTR_optarg_001befe4" (* "*") (cast_expression "(byte **)PTR_optarg_001befe4" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR_optarg_001befe4")))) (; ";")) (expression_statement "bVar12 = false;" (assignment_expression "bVar12 = false" (identifier "bVar12") (= "=") (false "false")) (; ";")) (expression_statement "bVar14 = pbVar3 == (byte *)0x0;" (assignment_expression "bVar14 = pbVar3 == (byte *)0x0" (identifier "bVar14") (= "=") (binary_expression "pbVar3 == (byte *)0x0" (identifier "pbVar3") (== "==") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")))) (; ";")) (if_statement "if (bVar14) {\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }\n        else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }" (if "if") (parenthesized_expression "(bVar14)" (( "(") (identifier "bVar14") () ")")) (compound_statement "{\n          pbVar3 = &DAT_000732c8;\n          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;\n        }" ({ "{") (expression_statement "pbVar3 = &DAT_000732c8;" (assignment_expression "pbVar3 = &DAT_000732c8" (identifier "pbVar3") (= "=") (pointer_expression "&DAT_000732c8" (& "&") (identifier "DAT_000732c8"))) (; ";")) (expression_statement "*(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;" (assignment_expression "*(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8" (pointer_expression "*(undefined1 **)PTR_optarg_001befe4" (* "*") (cast_expression "(undefined1 **)PTR_optarg_001befe4" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR_optarg_001befe4"))) (= "=") (pointer_expression "&DAT_000732c8" (& "&") (identifier "DAT_000732c8"))) (; ";")) (} "}")) (else_clause "else {\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }" (else "else") (compound_statement "{\n          iVar8 = 5;\n          pbVar9 = pbVar3;\n          pbVar11 = (byte *)0x6ebed;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);\n          if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }\n        }" ({ "{") (expression_statement "iVar8 = 5;" (assignment_expression "iVar8 = 5" (identifier "iVar8") (= "=") (number_literal "5")) (; ";")) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" (identifier "pbVar9") (= "=") (identifier "pbVar3")) (; ";")) (expression_statement "pbVar11 = (byte *)0x6ebed;" (assignment_expression "pbVar11 = (byte *)0x6ebed" (identifier "pbVar11") (= "=") (cast_expression "(byte *)0x6ebed" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x6ebed"))) (; ";")) (do_statement "do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          } while (bVar14);" (do "do") (compound_statement "{\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar12 = *pbVar9 < *pbVar11;\n            bVar14 = *pbVar9 == *pbVar11;\n            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;\n          }" ({ "{") (if_statement "if (iVar8 == 0) break;" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" (identifier "iVar8") (= "=") (binary_expression "iVar8 + -1" (identifier "iVar8") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar12 = *pbVar9 < *pbVar11;" (assignment_expression "bVar12 = *pbVar9 < *pbVar11" (identifier "bVar12") (= "=") (binary_expression "*pbVar9 < *pbVar11" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")))) (; ";")) (expression_statement "bVar14 = *pbVar9 == *pbVar11;" (assignment_expression "bVar14 = *pbVar9 == *pbVar11" (identifier "bVar14") (= "=") (binary_expression "*pbVar9 == *pbVar11" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + (uint)bVar15 * -2 + 1" (binary_expression "pbVar9 + (uint)bVar15 * -2" (identifier "pbVar9") (+ "+") (binary_expression "(uint)bVar15 * -2" (cast_expression "(uint)bVar15" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar15")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1" (identifier "pbVar11") (= "=") (binary_expression "pbVar11 + (uint)bVar15 * -2 + 1" (binary_expression "pbVar11 + (uint)bVar15 * -2" (identifier "pbVar11") (+ "+") (binary_expression "(uint)bVar15 * -2" (cast_expression "(uint)bVar15" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar15")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar14)" (( "(") (identifier "bVar14") () ")")) (; ";")) (if_statement "if ((!bVar12 && !bVar14) == bVar12) {\n            return 1;\n          }" (if "if") (parenthesized_expression "((!bVar12 && !bVar14) == bVar12)" (( "(") (binary_expression "(!bVar12 && !bVar14) == bVar12" (parenthesized_expression "(!bVar12 && !bVar14)" (( "(") (binary_expression "!bVar12 && !bVar14" (unary_expression "!bVar12" (! "!") (identifier "bVar12")) (&& "&&") (unary_expression "!bVar14" (! "!") (identifier "bVar14"))) () ")")) (== "==") (identifier "bVar12")) () ")")) (compound_statement "{\n            return 1;\n          }" ({ "{") (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (} "}")))) (expression_statement "DAT_001c0aa4 = (void *)xstrdup(pbVar3);" (assignment_expression "DAT_001c0aa4 = (void *)xstrdup(pbVar3)" (identifier "DAT_001c0aa4") (= "=") (cast_expression "(void *)xstrdup(pbVar3)" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "xstrdup(pbVar3)" (identifier "xstrdup") (argument_list "(pbVar3)" (( "(") (identifier "pbVar3") () ")"))))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (if_statement "if (param_1 != 0x199) {\n        return 0;\n      }" (if "if") (parenthesized_expression "(param_1 != 0x199)" (( "(") (binary_expression "param_1 != 0x199" (identifier "param_1") (!= "!=") (number_literal "0x199")) () ")")) (compound_statement "{\n        return 0;\n      }" ({ "{") (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (expression_statement "pcVar10 = *(char **)PTR_optarg_001befe4;" (assignment_expression "pcVar10 = *(char **)PTR_optarg_001befe4" (identifier "pcVar10") (= "=") (pointer_expression "*(char **)PTR_optarg_001befe4" (* "*") (cast_expression "(char **)PTR_optarg_001befe4" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR_optarg_001befe4")))) (; ";")) (expression_statement "iVar8 = strcasecmp(pcVar10,"none");" (assignment_expression "iVar8 = strcasecmp(pcVar10,"none")" (identifier "iVar8") (= "=") (call_expression "strcasecmp(pcVar10,"none")" (identifier "strcasecmp") (argument_list "(pcVar10,"none")" (( "(") (identifier "pcVar10") (, ",") (string_literal ""none"" (" """) (string_content "none") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n        DAT_001c0e2c = 0;\n        return 1;\n      }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        DAT_001c0e2c = 0;\n        return 1;\n      }" ({ "{") (expression_statement "DAT_001c0e2c = 0;" (assignment_expression "DAT_001c0e2c = 0" (identifier "DAT_001c0e2c") (= "=") (number_literal "0")) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcasecmp(pcVar10,"zlib");" (assignment_expression "iVar8 = strcasecmp(pcVar10,"zlib")" (identifier "iVar8") (= "=") (call_expression "strcasecmp(pcVar10,"zlib")" (identifier "strcasecmp") (argument_list "(pcVar10,"zlib")" (( "(") (identifier "pcVar10") (, ",") (string_literal ""zlib"" (" """) (string_content "zlib") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 != 0) {\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }" (if "if") (parenthesized_expression "(iVar8 != 0)" (( "(") (binary_expression "iVar8 != 0" (identifier "iVar8") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        iVar8 = strcasecmp(pcVar10,"zlib-gnu");\n        if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }\n        iVar8 = strcasecmp(pcVar10,"zlib-gabi");\n        if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }\n      }" ({ "{") (expression_statement "iVar8 = strcasecmp(pcVar10,"zlib-gnu");" (assignment_expression "iVar8 = strcasecmp(pcVar10,"zlib-gnu")" (identifier "iVar8") (= "=") (call_expression "strcasecmp(pcVar10,"zlib-gnu")" (identifier "strcasecmp") (argument_list "(pcVar10,"zlib-gnu")" (( "(") (identifier "pcVar10") (, ",") (string_literal ""zlib-gnu"" (" """) (string_content "zlib-gnu") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          DAT_001c0e2c = 3;\n          return 1;\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          DAT_001c0e2c = 3;\n          return 1;\n        }" ({ "{") (expression_statement "DAT_001c0e2c = 3;" (assignment_expression "DAT_001c0e2c = 3" (identifier "DAT_001c0e2c") (= "=") (number_literal "3")) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar8 = strcasecmp(pcVar10,"zlib-gabi");" (assignment_expression "iVar8 = strcasecmp(pcVar10,"zlib-gabi")" (identifier "iVar8") (= "=") (call_expression "strcasecmp(pcVar10,"zlib-gabi")" (identifier "strcasecmp") (argument_list "(pcVar10,"zlib-gabi")" (( "(") (identifier "pcVar10") (, ",") (string_literal ""zlib-gabi"" (" """) (string_content "zlib-gabi") (" """)) () ")")))) (; ";")) (if_statement "if (iVar8 != 0) {\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }" (if "if") (parenthesized_expression "(iVar8 != 0)" (( "(") (binary_expression "iVar8 != 0" (identifier "iVar8") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";\n          goto LAB_0004f9a8;\n        }" ({ "{") (expression_statement "pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";" (assignment_expression "pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n"" (identifier "pcVar4") (= "=") (string_literal ""%F%P: invalid --compress-debug-sections option: `%s\'\n"" (" """) (string_content "%F%P: invalid --compress-debug-sections option: `%s") (escape_sequence "\'") (escape_sequence "\n") (" """))) (; ";")) (goto_statement "goto LAB_0004f9a8;" (goto "goto") (statement_identifier "LAB_0004f9a8") (; ";")) (} "}"))) (} "}"))) (expression_statement "DAT_001c0e2c = 5;" (assignment_expression "DAT_001c0e2c = 5" (identifier "DAT_001c0e2c") (= "=") (number_literal "5")) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (if_statement "if (param_1 == 0x14d) {\n      DAT_001bfd3c = 0xffffffff;\n      return 1;\n    }" (if "if") (parenthesized_expression "(param_1 == 0x14d)" (( "(") (binary_expression "param_1 == 0x14d" (identifier "param_1") (== "==") (number_literal "0x14d")) () ")")) (compound_statement "{\n      DAT_001bfd3c = 0xffffffff;\n      return 1;\n    }" ({ "{") (expression_statement "DAT_001bfd3c = 0xffffffff;" (assignment_expression "DAT_001bfd3c = 0xffffffff" (identifier "DAT_001bfd3c") (= "=") (number_literal "0xffffffff")) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (if_statement "if (0x14d < (int)param_1) {\n      if (param_1 == 400) {\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }\n      if ((int)param_1 < 0x191) {\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x100;\n      return 1;\n    }" (if "if") (parenthesized_expression "(0x14d < (int)param_1)" (( "(") (binary_expression "0x14d < (int)param_1" (number_literal "0x14d") (< "<") (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1"))) () ")")) (compound_statement "{\n      if (param_1 == 400) {\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }\n      if ((int)param_1 < 0x191) {\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }\n      _DAT_001c0e24 = _DAT_001c0e24 | 0x100;\n      return 1;\n    }" ({ "{") (if_statement "if (param_1 == 400) {\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }" (if "if") (parenthesized_expression "(param_1 == 400)" (( "(") (binary_expression "param_1 == 400" (identifier "param_1") (== "==") (number_literal "400")) () ")")) (compound_statement "{\n        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;\n        return 1;\n      }" ({ "{") (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff" (identifier "_DAT_001c0e24") (= "=") (binary_expression "_DAT_001c0e24 & 0xfffffeff" (identifier "_DAT_001c0e24") (& "&") (number_literal "0xfffffeff"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (if_statement "if ((int)param_1 < 0x191) {\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }" (if "if") (parenthesized_expression "((int)param_1 < 0x191)" (( "(") (binary_expression "(int)param_1 < 0x191" (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1")) (< "<") (number_literal "0x191")) () ")")) (compound_statement "{\n        if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }\n        return 0;\n      }" ({ "{") (if_statement "if (param_1 == 0x14e) {\n          DAT_001bfd40 = 1;\n          return 1;\n        }" (if "if") (parenthesized_expression "(param_1 == 0x14e)" (( "(") (binary_expression "param_1 == 0x14e" (identifier "param_1") (== "==") (number_literal "0x14e")) () ")")) (compound_statement "{\n          DAT_001bfd40 = 1;\n          return 1;\n        }" ({ "{") (expression_statement "DAT_001bfd40 = 1;" (assignment_expression "DAT_001bfd40 = 1" (identifier "DAT_001bfd40") (= "=") (number_literal "1")) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (expression_statement "_DAT_001c0e24 = _DAT_001c0e24 | 0x100;" (assignment_expression "_DAT_001c0e24 = _DAT_001c0e24 | 0x100" (identifier "_DAT_001c0e24") (= "=") (binary_expression "_DAT_001c0e24 | 0x100" (identifier "_DAT_001c0e24") (| "|") (number_literal "0x100"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (if_statement "if (param_1 != 0x14b) {\n      if (param_1 == 0x14c) {\n        DAT_001bfd34 = 0;\n        return 1;\n      }\n      return 0;\n    }" (if "if") (parenthesized_expression "(param_1 != 0x14b)" (( "(") (binary_expression "param_1 != 0x14b" (identifier "param_1") (!= "!=") (number_literal "0x14b")) () ")")) (compound_statement "{\n      if (param_1 == 0x14c) {\n        DAT_001bfd34 = 0;\n        return 1;\n      }\n      return 0;\n    }" ({ "{") (if_statement "if (param_1 == 0x14c) {\n        DAT_001bfd34 = 0;\n        return 1;\n      }" (if "if") (parenthesized_expression "(param_1 == 0x14c)" (( "(") (binary_expression "param_1 == 0x14c" (identifier "param_1") (== "==") (number_literal "0x14c")) () ")")) (compound_statement "{\n        DAT_001bfd34 = 0;\n        return 1;\n      }" ({ "{") (expression_statement "DAT_001bfd34 = 0;" (assignment_expression "DAT_001bfd34 = 0" (identifier "DAT_001bfd34") (= "=") (number_literal "0")) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (expression_statement "DAT_001bfd34 = 1;" (assignment_expression "DAT_001bfd34 = 1" (identifier "DAT_001bfd34") (= "=") (number_literal "1")) (; ";")) (if_statement "if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {\n      DAT_001bfd34 = 1;\n      return 1;\n    }" (if "if") (parenthesized_expression "(*(char **)PTR_optarg_001befe4 == (char *)0x0)" (( "(") (binary_expression "*(char **)PTR_optarg_001befe4 == (char *)0x0" (pointer_expression "*(char **)PTR_optarg_001befe4" (* "*") (cast_expression "(char **)PTR_optarg_001befe4" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR_optarg_001befe4"))) (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      DAT_001bfd34 = 1;\n      return 1;\n    }" ({ "{") (expression_statement "DAT_001bfd34 = 1;" (assignment_expression "DAT_001bfd34 = 1" (identifier "DAT_001bfd34") (= "=") (number_literal "1")) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "DAT_001bfd44 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);" (assignment_expression "DAT_001bfd44 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0)" (identifier "DAT_001bfd44") (= "=") (call_expression "strtoul(*(char **)PTR_optarg_001befe4,local_20,0)" (identifier "strtoul") (argument_list "(*(char **)PTR_optarg_001befe4,local_20,0)" (( "(") (pointer_expression "*(char **)PTR_optarg_001befe4" (* "*") (cast_expression "(char **)PTR_optarg_001befe4" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR_optarg_001befe4"))) (, ",") (identifier "local_20") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "DAT_001bfd48 = 0;" (assignment_expression "DAT_001bfd48 = 0" (identifier "DAT_001bfd48") (= "=") (number_literal "0")) (; ";")) (if_statement "if (((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&\n       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)) {\n      DAT_001bfd48 = 0;\n      return 1;\n    }" (if "if") (parenthesized_expression "(((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&\n       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0))" (( "(") (binary_expression "((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&\n       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)" (parenthesized_expression "((*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1)))" (( "(") (binary_expression "(*local_20[0] == '\0') &&\n        (iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))" (parenthesized_expression "(*local_20[0] == '\0')" (( "(") (binary_expression "*local_20[0] == '\0'" (pointer_expression "*local_20[0]" (* "*") (subscript_expression "local_20[0]" (identifier "local_20") ([ "[") (number_literal "0") (] "]"))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))" (( "(") (comma_expression "iVar8 = (DAT_001bfd44 != 0) - 1,\n        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1)" (assignment_expression "iVar8 = (DAT_001bfd44 != 0) - 1" (identifier "iVar8") (= "=") (binary_expression "(DAT_001bfd44 != 0) - 1" (parenthesized_expression "(DAT_001bfd44 != 0)" (( "(") (binary_expression "DAT_001bfd44 != 0" (identifier "DAT_001bfd44") (!= "!=") (number_literal "0")) () ")")) (- "-") (number_literal "1"))) (, ",") (binary_expression "iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1)" (binary_expression "iVar8 != 0" (identifier "iVar8") (!= "!=") (number_literal "0")) (|| "||") (binary_expression "(uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1)" (binary_expression "(uint)-iVar8" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (- "-") (identifier "iVar8")) (< "<") (call_expression "(uint)(0xffe < DAT_001bfd44 - 1)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(0xffe < DAT_001bfd44 - 1)" (( "(") (binary_expression "0xffe < DAT_001bfd44 - 1" (number_literal "0xffe") (< "<") (binary_expression "DAT_001bfd44 - 1" (identifier "DAT_001bfd44") (- "-") (number_literal "1"))) () ")")))))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)" (( "(") (binary_expression "(DAT_001bfd44 - 1 & DAT_001bfd44) == 0" (parenthesized_expression "(DAT_001bfd44 - 1 & DAT_001bfd44)" (( "(") (binary_expression "DAT_001bfd44 - 1 & DAT_001bfd44" (binary_expression "DAT_001bfd44 - 1" (identifier "DAT_001bfd44") (- "-") (number_literal "1")) (& "&") (identifier "DAT_001bfd44")) () ")")) (== "==") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n      DAT_001bfd48 = 0;\n      return 1;\n    }" ({ "{") (expression_statement "DAT_001bfd48 = 0;" (assignment_expression "DAT_001bfd48 = 0" (identifier "DAT_001bfd48") (= "=") (number_literal "0")) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "pcVar10 = *(char **)puVar1;" (assignment_expression "pcVar10 = *(char **)puVar1" (identifier "pcVar10") (= "=") (pointer_expression "*(char **)puVar1" (* "*") (cast_expression "(char **)puVar1" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "puVar1")))) (; ";")) (expression_statement "pcVar4 = "%F%P: invalid pagesize `%s\'\n";" (assignment_expression "pcVar4 = "%F%P: invalid pagesize `%s\'\n"" (identifier "pcVar4") (= "=") (string_literal ""%F%P: invalid pagesize `%s\'\n"" (" """) (string_content "%F%P: invalid pagesize `%s") (escape_sequence "\'") (escape_sequence "\n") (" """))) (; ";")) (} "}")))) (labeled_statement "LAB_0004f9a8:\n  uVar7 = dcgettext(0,pcVar4,5);" (statement_identifier "LAB_0004f9a8") (: ":") (expression_statement "uVar7 = dcgettext(0,pcVar4,5);" (assignment_expression "uVar7 = dcgettext(0,pcVar4,5)" (identifier "uVar7") (= "=") (call_expression "dcgettext(0,pcVar4,5)" (identifier "dcgettext") (argument_list "(0,pcVar4,5)" (( "(") (number_literal "0") (, ",") (identifier "pcVar4") (, ",") (number_literal "5") () ")")))) (; ";"))) (expression_statement "FUN_00034d60(uVar7,pcVar10);" (call_expression "FUN_00034d60(uVar7,pcVar10)" (identifier "FUN_00034d60") (argument_list "(uVar7,pcVar10)" (( "(") (identifier "uVar7") (, ",") (identifier "pcVar10") () ")"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}")))

/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
/* WARNING: Unknown calling convention */

type_1 function_1(int var_1)

{
  type_2 uVar1;
  type_3 *puVar2;
  type_4 uVar3;
  type_5 *var_13;
  char *pcVar5;
  type_6 var_3;
  char *pcVar7;
  int var_7;
  type_5 *var_8;
  type_5 *var_9;
  bool var_10;
  bool var_11;
  bool var_12;
  type_5 bVar14;
  char *end;
  type_2 uStack_14;
  
  puVar2 = PTR_optarg_001befe4;
  bVar14 = 0;
  uStack_14 = 0x4f579;
  if (var_1 == 0x14a) {
    params.emit_stub_syms = 0;
    return 1;
  }
  uVar3 = link_info._4_1_;
  if (var_1 < 0x14b) {
    if (var_1 == 0x142) {
      params.no_tls_get_addr_opt = 1;
      return 1;
    }
    if (0x142 < var_1) {
      if (var_1 == 0x146) {
        params.plt_stub_align = 0;
        return 1;
      }
      if (0x146 < var_1) {
        if (var_1 == 0x148) {
          old_got = 1;
          return 1;
        }
        if (var_1 < 0x149) {
          no_inline_opt = 1;
          return 1;
        }
        params.emit_stub_syms = 1;
        return 1;
      }
      if (var_1 == 0x144) {
        params.plt_style = PLT_OLD;
        return 1;
      }
      if (var_1 < 0x145) {
        params.plt_style = PLT_NEW;
        return 1;
      }
      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {
        params.plt_stub_align = 5;
        return 1;
      }
      var_3 = var_2(*(char **)PTR_optarg_001befe4,&end,0);
      if ((*end == '\0') && (var_3 < 6)) {
        params.plt_stub_align = var_3;
        return 1;
      }
      uVar1 = *(type_2 *)puVar2;
      pcVar7 = (char *)var_4(0,"%F%P: invalid --plt-align `%s\'\n",5);
      var_5(pcVar7,uVar1);
      params.plt_stub_align = var_3;
      return 1;
    }
    if (var_1 == 0xc2) {
      notlsopt = 1;
      params.no_tls_get_addr_opt = 1;
      return 0;
    }
    if (0xc2 < var_1) {
      if (var_1 == 0x12e) {
        link_info._4_4_ = link_info._4_4_ | 0x200;
        return 1;
      }
      if (var_1 != 0x141) {
        if (var_1 == 0x12d) {
          link_info._4_4_ = link_info._4_4_ & 0xfffffdff;
          return 1;
        }
        return 0;
      }
      notlsopt = 1;
      return 1;
    }
    if (var_1 == 0x50) {
      var_6(&depaudit,*(char **)PTR_optarg_001befe4);
      return 1;
    }
    var_10 = (type_7)var_1 < 0x7a;
    var_12 = var_1 == 0x7a;
    if (!var_12) {
      return 0;
    }
    var_7 = 5;
    var_13 = *(type_5 **)PTR_optarg_001befe4;
    var_8 = var_13;
    var_9 = (type_5 *)0x6ed7c;
    do {
      if (var_7 == 0) break;
      var_7 = var_7 + -1;
      var_10 = *var_8 < *var_9;
      var_12 = *var_8 == *var_9;
      var_8 = var_8 + 1;
      var_9 = var_9 + 1;
    } while (var_12);
    var_11 = false;
    var_10 = (!var_10 && !var_12) == var_10;
    if (var_10) {
      link_info._2_2_ = link_info._2_2_ | 0x60;
      return 1;
    }
    var_7 = 7;
    var_8 = var_13;
    var_9 = (type_5 *)"undefs";
    do {
      if (var_7 == 0) break;
      var_7 = var_7 + -1;
      var_11 = *var_8 < *var_9;
      var_10 = *var_8 == *var_9;
      var_8 = var_8 + 1;
      var_9 = var_9 + 1;
    } while (var_10);
    var_12 = false;
    var_10 = (!var_11 && !var_10) == var_11;
    if (var_10) {
      link_info._2_2_ = link_info._2_2_ & 0xff9f | 0x20;
      return 1;
    }
    var_7 = 8;
    var_8 = var_13;
    var_9 = (type_5 *)"muldefs";
    do {
      if (var_7 == 0) break;
      var_7 = var_7 + -1;
      var_12 = *var_8 < *var_9;
      var_10 = *var_8 == *var_9;
      var_8 = var_8 + 1;
      var_9 = var_9 + 1;
    } while (var_10);
    var_11 = false;
    var_10 = (!var_12 && !var_10) == var_12;
    if (var_10) {
      link_info._4_4_ = link_info._4_4_ | 0x800;
      return 1;
    }
    var_7 = 0xe;
    var_8 = var_13;
    var_9 = (type_5 *)"max-page-size=";
    do {
      if (var_7 == 0) break;
      var_7 = var_7 + -1;
      var_11 = *var_8 < *var_9;
      var_10 = *var_8 == *var_9;
      var_8 = var_8 + 1;
      var_9 = var_9 + 1;
    } while (var_10);
    var_12 = false;
    var_10 = (!var_11 && !var_10) == var_11;
    if (var_10) {
      config.maxpagesize._0_4_ = var_2((char *)(var_13 + 0xe),&end,0);
      config.maxpagesize._4_4_ = 0;
      if ((*end == '\0') && (((type_6)config.maxpagesize & (type_6)config.maxpagesize - 1) == 0)) {
        config.maxpagesize._4_4_ = 0;
        return 1;
      }
      pcVar5 = "%F%P: invalid maximum page size `%s\'\n";
      pcVar7 = (char *)(*(int *)puVar2 + 0xe);
    }
    else {
      var_7 = 0x11;
      var_8 = var_13;
      var_9 = (type_5 *)"common-page-size=";
      do {
        if (var_7 == 0) break;
        var_7 = var_7 + -1;
        var_12 = *var_8 < *var_9;
        var_10 = *var_8 == *var_9;
        var_8 = var_8 + 1;
        var_9 = var_9 + 1;
      } while (var_10);
      var_11 = false;
      var_10 = (!var_12 && !var_10) == var_12;
      if (!var_10) {
        var_7 = 0xb;
        var_8 = var_13;
        var_9 = (type_5 *)"stack-size=";
        do {
          if (var_7 == 0) break;
          var_7 = var_7 + -1;
          var_11 = *var_8 < *var_9;
          var_10 = *var_8 == *var_9;
          var_8 = var_8 + 1;
          var_9 = var_9 + 1;
        } while (var_10);
        var_12 = false;
        var_10 = (!var_11 && !var_10) == var_11;
        if (var_10) {
          link_info.stacksize._0_4_ = var_2((char *)(var_13 + 0xb),&end,0);
          link_info.stacksize._4_4_ = 0;
          if (*end != '\0') {
            var_7 = *(int *)puVar2;
            pcVar7 = (char *)var_4(0,"%F%P: invalid stack size `%s\'\n",5,var_13 + 0xb);
            var_5(pcVar7,var_7 + 0xb);
          }
          if (link_info.stacksize._4_4_ != 0 || (type_6)link_info.stacksize != 0) {
            return 1;
          }
          link_info.stacksize._0_4_ = 0xffffffff;
          link_info.stacksize._4_4_ = 0xffffffff;
          return 1;
        }
        var_7 = 10;
        var_8 = var_13;
        var_9 = (type_5 *)0xa55ed;
        do {
          if (var_7 == 0) break;
          var_7 = var_7 + -1;
          var_12 = *var_8 < *var_9;
          var_10 = *var_8 == *var_9;
          var_8 = var_8 + 1;
          var_9 = var_9 + 1;
        } while (var_10);
        if ((!var_12 && !var_10) == var_12) {
          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x8000;
          return 1;
        }
        var_7 = var_14((char *)var_13,"noexecstack");
        if (var_7 == 0) {
          link_info._4_4_ = link_info._4_4_ & 0xfffe7fff | 0x10000;
          return 1;
        }
        var_7 = var_14((char *)var_13,"globalaudit");
        if (var_7 == 0) {
          link_info.flags_1._0_4_ = (type_7)link_info.flags_1 | 0x1000000;
          return 1;
        }
        var_7 = var_14((char *)var_13,"global");
        if (var_7 == 0) {
          link_info.flags_1._0_4_ = (type_7)link_info.flags_1 | 2;
          return 1;
        }
        var_7 = var_14((char *)var_13,"initfirst");
        if (var_7 == 0) {
          link_info.flags_1._0_4_ = (type_7)link_info.flags_1 | 0x20;
          return 1;
        }
        var_7 = var_14((char *)var_13,"interpose");
        if (var_7 == 0) {
          link_info.flags_1._0_4_ = (type_7)link_info.flags_1 | 0x400;
          return 1;
        }
        var_7 = var_14((char *)var_13,"loadfltr");
        if (var_7 == 0) {
          link_info.flags_1._0_4_ = (type_7)link_info.flags_1 | 0x10;
          return 1;
        }
        var_7 = var_14((char *)var_13,"nodefaultlib");
        if (var_7 == 0) {
          link_info.flags_1._0_4_ = (type_7)link_info.flags_1 | 0x800;
          return 1;
        }
        var_7 = var_14((char *)var_13,"nodelete");
        if (var_7 == 0) {
          link_info.flags_1._0_4_ = (type_7)link_info.flags_1 | 8;
          return 1;
        }
        var_7 = var_14((char *)var_13,"nodlopen");
        if (var_7 == 0) {
          link_info.flags_1._0_4_ = (type_7)link_info.flags_1 | 0x40;
          return 1;
        }
        var_7 = var_14((char *)var_13,"nodump");
        if (var_7 == 0) {
          link_info.flags_1._0_4_ = (type_7)link_info.flags_1 | 0x1000;
          return 1;
        }
        var_7 = var_14((char *)var_13,"now");
        if (var_7 == 0) {
          link_info.flags._0_4_ = (type_7)link_info.flags | 8;
          link_info.flags_1._0_4_ = (type_7)link_info.flags_1 | 1;
          return 1;
        }
        var_7 = var_14((char *)var_13,"lazy");
        if (var_7 == 0) {
          link_info.flags._0_4_ = (type_7)link_info.flags & 0xfffffff7;
          link_info.flags_1._0_4_ = (type_7)link_info.flags_1 & 0xfffffffe;
          return 1;
        }
        var_7 = var_14((char *)var_13,"origin");
        if (var_7 == 0) {
          link_info.flags._0_4_ = (type_7)link_info.flags | 1;
          link_info.flags_1._0_4_ = (type_7)link_info.flags_1 | 0x80;
          return 1;
        }
        var_7 = var_14((char *)var_13,"combreloc");
        if (var_7 == 0) {
          link_info._4_4_ = link_info._4_4_ | 0x40;
          return 1;
        }
        var_7 = var_14((char *)var_13,"nocombreloc");
        if (var_7 == 0) {
          link_info._4_4_ = link_info._4_4_ & 0xffffffbf;
          return 1;
        }
        var_7 = var_14((char *)var_13,"nocopyreloc");
        if (var_7 == 0) {
          link_info._0_1_ = link_info._0_1_ | 8;
          return 1;
        }
        var_7 = var_14((char *)var_13,"relro");
        if (var_7 == 0) {
          link_info._2_2_ = link_info._2_2_ | 0x1000;
          return 1;
        }
        var_7 = var_14((char *)var_13,"norelro");
        if (var_7 == 0) {
          link_info._2_2_ = link_info._2_2_ & 0xefff;
          return 1;
        }
        var_7 = var_14((char *)var_13,"separate-code");
        if (var_7 == 0) {
          link_info._2_2_ = link_info._2_2_ | 0x2000;
          return 1;
        }
        var_7 = var_14((char *)var_13,"noseparate-code");
        if (var_7 == 0) {
          link_info._2_2_ = link_info._2_2_ & 0xdfff;
          return 1;
        }
        var_7 = var_14((char *)var_13,"common");
        if (var_7 == 0) {
          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 2;
          return 1;
        }
        var_7 = var_14((char *)var_13,"nocommon");
        if (var_7 == 0) {
          link_info._2_2_ = link_info._2_2_ & 0xfff9 | 4;
          return 1;
        }
        var_7 = var_14((char *)var_13,"text");
        if (var_7 == 0) {
          link_info._4_4_ = link_info._4_4_ | 2;
          return 1;
        }
        var_7 = var_14((char *)var_13,"notext");
        if ((var_7 == 0) || (var_7 = var_14((char *)var_13,"textoff"), var_7 == 0)) {
          link_info._4_4_ = link_info._4_4_ & 0xfffffffd;
          return 1;
        }
        var_7 = var_14((char *)var_13,"dynamic-undefined-weak");
        if (var_7 == 0) {
          link_info.dynamic_undefined_weak = 1;
          return 1;
        }
        var_7 = var_14((char *)var_13,"nodynamic-undefined-weak");
        if (var_7 == 0) {
          link_info.dynamic_undefined_weak = 0;
          return 1;
        }
        pcVar7 = "%P: warning: -z %s ignored\n";
LAB_0004fd61:
        pcVar7 = (char *)var_4(0,pcVar7,5);
        var_5(pcVar7,var_13);
        return 1;
      }
      config.commonpagesize._0_4_ = var_2((char *)(var_13 + 0x11),&end,0);
      config.commonpagesize._4_4_ = 0;
      if ((*end == '\0') && (((type_6)config.commonpagesize & (type_6)config.commonpagesize - 1) == 0)
         ) {
        config.commonpagesize._4_4_ = 0;
        return 1;
      }
      pcVar5 = "%F%P: invalid common page size `%s\'\n";
      pcVar7 = (char *)(*(int *)puVar2 + 0x11);
    }
  }
  else {
    if (var_1 == 0x192) {
      link_info._2_2_ = link_info._2_2_ | 0x1e0;
      link_info.flags_1._0_4_ = (type_7)link_info.flags_1 | 4;
      return 1;
    }
    if (0x192 < var_1) {
      if (var_1 == 0x196) {
        var_13 = *(type_5 **)PTR_optarg_001befe4;
        var_7 = 5;
        var_10 = false;
        var_12 = (link_info._4_4_ & 0xf3) == 0;
        link_info._4_4_ = link_info._4_4_ & 0xfffffff3;
        var_8 = var_13;
        var_9 = &DAT_000a55a5;
        do {
          if (var_7 == 0) break;
          var_7 = var_7 + -1;
          var_10 = *var_8 < *var_9;
          var_12 = *var_8 == *var_9;
          var_8 = var_8 + 1;
          var_9 = var_9 + 1;
        } while (var_12);
        var_11 = false;
        var_10 = (!var_10 && !var_12) == var_10;
        if (var_10) {
          link_info._4_4_ = var_15(link_info._5_3_,uVar3) & 0xfffffff3 | 4;
          return 1;
        }
        var_7 = 4;
        var_8 = var_13;
        var_9 = &DAT_000a5597;
        do {
          if (var_7 == 0) break;
          var_7 = var_7 + -1;
          var_11 = *var_8 < *var_9;
          var_10 = *var_8 == *var_9;
          var_8 = var_8 + 1;
          var_9 = var_9 + 1;
        } while (var_10);
        var_12 = false;
        var_10 = (!var_11 && !var_10) == var_11;
        if (var_10) {
          link_info._4_4_ = var_15(link_info._5_3_,uVar3) & 0xfffffff3 | 8;
          return 1;
        }
        var_7 = 5;
        var_8 = var_13;
        var_9 = &DAT_000a55aa;
        do {
          if (var_7 == 0) break;
          var_7 = var_7 + -1;
          var_12 = *var_8 < *var_9;
          var_10 = *var_8 == *var_9;
          var_8 = var_8 + 1;
          var_9 = var_9 + 1;
        } while (var_10);
        if ((!var_12 && !var_10) == var_12) {
          link_info._4_4_ = var_15(link_info._5_3_,uVar3) & 0xfffffff3 | 0xc;
          return 1;
        }
        pcVar7 = "%F%P: invalid hash style `%s\'\n";
        goto LAB_0004fd61;
      }
      if (var_1 < 0x197) {
        if (var_1 == 0x194) {
          link_info._2_2_ = link_info._2_2_ & 0x3fff;
          return 1;
        }
        if (var_1 < 0x195) {
          link_info._2_2_ = link_info._2_2_ & 0x3fff | 0x4000;
          return 1;
        }
        var_16(*(char **)PTR_optarg_001befe4);
        return 1;
      }
      if (var_1 == 0x198) {
        var_6(&audit,*(char **)PTR_optarg_001befe4);
        return 1;
      }
      if (var_1 < 0x198) {
        if (var_17 != (char *)0x0) {
          var_18(var_17);
          var_17 = (char *)0x0;
        }
        var_13 = *(type_5 **)PTR_optarg_001befe4;
        var_10 = false;
        var_12 = var_13 == (type_5 *)0x0;
        if (var_12) {
          var_13 = &DAT_000732c8;
          *(type_4 **)PTR_optarg_001befe4 = &DAT_000732c8;
        }
        else {
          var_7 = 5;
          var_8 = var_13;
          var_9 = (type_5 *)0x6ebed;
          do {
            if (var_7 == 0) break;
            var_7 = var_7 + -1;
            var_10 = *var_8 < *var_9;
            var_12 = *var_8 == *var_9;
            var_8 = var_8 + (type_7)bVar14 * -2 + 1;
            var_9 = var_9 + (type_7)bVar14 * -2 + 1;
          } while (var_12);
          if ((!var_10 && !var_12) == var_10) {
            return 1;
          }
        }
        var_17 = (char *)var_19(var_13);
        return 1;
      }
      if (var_1 != 0x199) {
        return 0;
      }
      pcVar7 = *(char **)PTR_optarg_001befe4;
      var_7 = var_20(pcVar7,"none");
      if (var_7 == 0) {
        link_info.compress_debug = COMPRESS_DEBUG_NONE;
        return 1;
      }
      var_7 = var_20(pcVar7,"zlib");
      if (var_7 != 0) {
        var_7 = var_20(pcVar7,"zlib-gnu");
        if (var_7 == 0) {
          link_info.compress_debug = COMPRESS_DEBUG_GNU_ZLIB;
          return 1;
        }
        var_7 = var_20(pcVar7,"zlib-gabi");
        if (var_7 != 0) {
          pcVar5 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";
          goto LAB_0004f9a8;
        }
      }
      link_info.compress_debug = COMPRESS_DEBUG_GABI_ZLIB;
      return 1;
    }
    if (var_1 == 0x14d) {
      params.pic_fixup = -1;
      return 1;
    }
    if (0x14d < var_1) {
      if (var_1 == 400) {
        link_info._4_4_ = link_info._4_4_ & 0xfffffeff;
        return 1;
      }
      if (var_1 < 0x191) {
        if (var_1 == 0x14e) {
          params.vle_reloc_fixup = 1;
          return 1;
        }
        return 0;
      }
      link_info._4_4_ = link_info._4_4_ | 0x100;
      return 1;
    }
    if (var_1 != 0x14b) {
      if (var_1 == 0x14c) {
        params.ppc476_workaround = 0;
        return 1;
      }
      return 0;
    }
    params.ppc476_workaround = 1;
    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {
      params.ppc476_workaround = 1;
      return 1;
    }
    params.pagesize._0_4_ = var_2(*(char **)PTR_optarg_001befe4,&end,0);
    params.pagesize._4_4_ = 0;
    if (((*end == '\0') &&
        (var_7 = ((type_6)params.pagesize != 0) - 1,
        var_7 != 0 || (type_7)-var_7 < (type_7)(0xffe < (type_6)params.pagesize - 1))) &&
       (((type_6)params.pagesize - 1 & (type_6)params.pagesize) == 0)) {
      params.pagesize._4_4_ = 0;
      return 1;
    }
    pcVar7 = *(char **)puVar2;
    pcVar5 = "%F%P: invalid pagesize `%s\'\n";
  }
LAB_0004f9a8:
  pcVar5 = (char *)var_4(0,pcVar5,5);
  var_5(pcVar5,pcVar7);
  return 1;
}


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

/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */

undefined4 MASKED(uint param_1)

{
  undefined *puVar1;
  undefined1 uVar2;
  byte *pbVar3;
  char *pcVar4;
  ulong uVar5;
  undefined4 uVar6;
  undefined4 uVar7;
  int iVar8;
  byte *pbVar9;
  char *pcVar10;
  byte *pbVar11;
  bool bVar12;
  bool bVar13;
  bool bVar14;
  byte bVar15;
  char *local_20 [3];
  undefined4 uStack_14;
  
  puVar1 = PTR_optarg_001befe4;
  bVar15 = 0;
  uStack_14 = 0x4f579;
  if (param_1 == 0x14a) {
    DAT_001bfd28 = 0;
    return 1;
  }
  uVar2 = DAT_001c0e24;
  if ((int)param_1 < 0x14b) {
    if (param_1 == 0x142) {
      DAT_001bfd2c = 1;
      return 1;
    }
    if (0x142 < (int)param_1) {
      if (param_1 == 0x146) {
        DAT_001bfd24 = 0;
        return 1;
      }
      if (0x146 < (int)param_1) {
        if (param_1 == 0x148) {
          DAT_001c0b24 = 1;
          return 1;
        }
        if ((int)param_1 < 0x149) {
          DAT_001c0b28 = 1;
          return 1;
        }
        DAT_001bfd28 = 1;
        return 1;
      }
      if (param_1 == 0x144) {
        DAT_001bfd20 = 1;
        return 1;
      }
      if ((int)param_1 < 0x145) {
        DAT_001bfd20 = 2;
        return 1;
      }
      if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {
        DAT_001bfd24 = 5;
        return 1;
      }
      uVar5 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);
      if ((*local_20[0] == '\0') && (uVar5 < 6)) {
        DAT_001bfd24 = uVar5;
        return 1;
      }
      uVar7 = *(undefined4 *)puVar1;
      uVar6 = dcgettext(0,"%F%P: invalid --plt-align `%s\'\n",5);
      FUN_00034d60(uVar6,uVar7);
      DAT_001bfd24 = uVar5;
      return 1;
    }
    if (param_1 == 0xc2) {
      DAT_001c0b2c = 1;
      DAT_001bfd2c = 1;
      return 0;
    }
    if (0xc2 < (int)param_1) {
      if (param_1 == 0x12e) {
        _DAT_001c0e24 = _DAT_001c0e24 | 0x200;
        return 1;
      }
      if (param_1 != 0x141) {
        if (param_1 == 0x12d) {
          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffdff;
          return 1;
        }
        return 0;
      }
      DAT_001c0b2c = 1;
      return 1;
    }
    if (param_1 == 0x50) {
      FUN_0004f470();
      return 1;
    }
    bVar12 = param_1 < 0x7a;
    bVar14 = param_1 == 0x7a;
    if (!bVar14) {
      return 0;
    }
    iVar8 = 5;
    pbVar3 = *(byte **)PTR_optarg_001befe4;
    pbVar9 = pbVar3;
    pbVar11 = (byte *)0x6ed7c;
    do {
      if (iVar8 == 0) break;
      iVar8 = iVar8 + -1;
      bVar12 = *pbVar9 < *pbVar11;
      bVar14 = *pbVar9 == *pbVar11;
      pbVar9 = pbVar9 + 1;
      pbVar11 = pbVar11 + 1;
    } while (bVar14);
    bVar13 = false;
    bVar12 = (!bVar12 && !bVar14) == bVar12;
    if (bVar12) {
      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x60;
      return 1;
    }
    iVar8 = 7;
    pbVar9 = pbVar3;
    pbVar11 = (byte *)"undefs";
    do {
      if (iVar8 == 0) break;
      iVar8 = iVar8 + -1;
      bVar13 = *pbVar9 < *pbVar11;
      bVar12 = *pbVar9 == *pbVar11;
      pbVar9 = pbVar9 + 1;
      pbVar11 = pbVar11 + 1;
    } while (bVar12);
    bVar14 = false;
    bVar12 = (!bVar13 && !bVar12) == bVar13;
    if (bVar12) {
      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xff9f | 0x20;
      return 1;
    }
    iVar8 = 8;
    pbVar9 = pbVar3;
    pbVar11 = (byte *)"muldefs";
    do {
      if (iVar8 == 0) break;
      iVar8 = iVar8 + -1;
      bVar14 = *pbVar9 < *pbVar11;
      bVar12 = *pbVar9 == *pbVar11;
      pbVar9 = pbVar9 + 1;
      pbVar11 = pbVar11 + 1;
    } while (bVar12);
    bVar13 = false;
    bVar12 = (!bVar14 && !bVar12) == bVar14;
    if (bVar12) {
      _DAT_001c0e24 = _DAT_001c0e24 | 0x800;
      return 1;
    }
    iVar8 = 0xe;
    pbVar9 = pbVar3;
    pbVar11 = (byte *)"max-page-size=";
    do {
      if (iVar8 == 0) break;
      iVar8 = iVar8 + -1;
      bVar13 = *pbVar9 < *pbVar11;
      bVar12 = *pbVar9 == *pbVar11;
      pbVar9 = pbVar9 + 1;
      pbVar11 = pbVar11 + 1;
    } while (bVar12);
    bVar14 = false;
    bVar12 = (!bVar13 && !bVar12) == bVar13;
    if (bVar12) {
      DAT_001c0f84 = strtoul((char *)(pbVar3 + 0xe),local_20,0);
      DAT_001c0f88 = 0;
      if ((*local_20[0] == '\0') && ((DAT_001c0f84 & DAT_001c0f84 - 1) == 0)) {
        DAT_001c0f88 = 0;
        return 1;
      }
      pcVar4 = "%F%P: invalid maximum page size `%s\'\n";
      pcVar10 = (char *)(*(int *)puVar1 + 0xe);
    }
    else {
      iVar8 = 0x11;
      pbVar9 = pbVar3;
      pbVar11 = (byte *)"common-page-size=";
      do {
        if (iVar8 == 0) break;
        iVar8 = iVar8 + -1;
        bVar14 = *pbVar9 < *pbVar11;
        bVar12 = *pbVar9 == *pbVar11;
        pbVar9 = pbVar9 + 1;
        pbVar11 = pbVar11 + 1;
      } while (bVar12);
      bVar13 = false;
      bVar12 = (!bVar14 && !bVar12) == bVar14;
      if (!bVar12) {
        iVar8 = 0xb;
        pbVar9 = pbVar3;
        pbVar11 = (byte *)"stack-size=";
        do {
          if (iVar8 == 0) break;
          iVar8 = iVar8 + -1;
          bVar13 = *pbVar9 < *pbVar11;
          bVar12 = *pbVar9 == *pbVar11;
          pbVar9 = pbVar9 + 1;
          pbVar11 = pbVar11 + 1;
        } while (bVar12);
        bVar14 = false;
        bVar12 = (!bVar13 && !bVar12) == bVar13;
        if (bVar12) {
          DAT_001c0e30 = strtoul((char *)(pbVar3 + 0xb),local_20,0);
          DAT_001c0e34 = 0;
          if (*local_20[0] != '\0') {
            iVar8 = *(int *)puVar1;
            uVar7 = dcgettext(0,"%F%P: invalid stack size `%s\'\n",5,pbVar3 + 0xb);
            FUN_00034d60(uVar7,iVar8 + 0xb);
          }
          if (DAT_001c0e34 != 0 || DAT_001c0e30 != 0) {
            return 1;
          }
          DAT_001c0e30 = 0xffffffff;
          DAT_001c0e34 = 0xffffffff;
          return 1;
        }
        iVar8 = 10;
        pbVar9 = pbVar3;
        pbVar11 = (byte *)0xa55ed;
        do {
          if (iVar8 == 0) break;
          iVar8 = iVar8 + -1;
          bVar14 = *pbVar9 < *pbVar11;
          bVar12 = *pbVar9 == *pbVar11;
          pbVar9 = pbVar9 + 1;
          pbVar11 = pbVar11 + 1;
        } while (bVar12);
        if ((!bVar14 && !bVar12) == bVar14) {
          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x8000;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"noexecstack");
        if (iVar8 == 0) {
          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffe7fff | 0x10000;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"globalaudit");
        if (iVar8 == 0) {
          DAT_001c0e9c = DAT_001c0e9c | 0x1000000;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"global");
        if (iVar8 == 0) {
          DAT_001c0e9c = DAT_001c0e9c | 2;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"initfirst");
        if (iVar8 == 0) {
          DAT_001c0e9c = DAT_001c0e9c | 0x20;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"interpose");
        if (iVar8 == 0) {
          DAT_001c0e9c = DAT_001c0e9c | 0x400;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"loadfltr");
        if (iVar8 == 0) {
          DAT_001c0e9c = DAT_001c0e9c | 0x10;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"nodefaultlib");
        if (iVar8 == 0) {
          DAT_001c0e9c = DAT_001c0e9c | 0x800;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"nodelete");
        if (iVar8 == 0) {
          DAT_001c0e9c = DAT_001c0e9c | 8;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"nodlopen");
        if (iVar8 == 0) {
          DAT_001c0e9c = DAT_001c0e9c | 0x40;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"nodump");
        if (iVar8 == 0) {
          DAT_001c0e9c = DAT_001c0e9c | 0x1000;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"now");
        if (iVar8 == 0) {
          _DAT_001c0e94 = _DAT_001c0e94 | 8;
          DAT_001c0e9c = DAT_001c0e9c | 1;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"lazy");
        if (iVar8 == 0) {
          _DAT_001c0e94 = _DAT_001c0e94 & 0xfffffff7;
          DAT_001c0e9c = DAT_001c0e9c & 0xfffffffe;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"origin");
        if (iVar8 == 0) {
          _DAT_001c0e94 = _DAT_001c0e94 | 1;
          DAT_001c0e9c = DAT_001c0e9c | 0x80;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"combreloc");
        if (iVar8 == 0) {
          _DAT_001c0e24 = _DAT_001c0e24 | 0x40;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"nocombreloc");
        if (iVar8 == 0) {
          _DAT_001c0e24 = _DAT_001c0e24 & 0xffffffbf;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"nocopyreloc");
        if (iVar8 == 0) {
          DAT_001c0e20._0_1_ = (byte)DAT_001c0e20 | 8;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"relro");
        if (iVar8 == 0) {
          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1000;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"norelro");
        if (iVar8 == 0) {
          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xefff;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"separate-code");
        if (iVar8 == 0) {
          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x2000;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"noseparate-code");
        if (iVar8 == 0) {
          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xdfff;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"common");
        if (iVar8 == 0) {
          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 2;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"nocommon");
        if (iVar8 == 0) {
          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0xfff9 | 4;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"text");
        if (iVar8 == 0) {
          _DAT_001c0e24 = _DAT_001c0e24 | 2;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"notext");
        if ((iVar8 == 0) || (iVar8 = strcmp((char *)pbVar3,"textoff"), iVar8 == 0)) {
          _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffffd;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"dynamic-undefined-weak");
        if (iVar8 == 0) {
          DAT_001c0e84 = 1;
          return 1;
        }
        iVar8 = strcmp((char *)pbVar3,"nodynamic-undefined-weak");
        if (iVar8 == 0) {
          DAT_001c0e84 = 0;
          return 1;
        }
        pcVar10 = "%P: warning: -z %s ignored\n";
LAB_0004fd61:
        uVar7 = dcgettext(0,pcVar10,5);
        FUN_00034d60(uVar7,pbVar3);
        return 1;
      }
      DAT_001c0f8c = strtoul((char *)(pbVar3 + 0x11),local_20,0);
      DAT_001c0f90 = 0;
      if ((*local_20[0] == '\0') && ((DAT_001c0f8c & DAT_001c0f8c - 1) == 0)) {
        DAT_001c0f90 = 0;
        return 1;
      }
      pcVar4 = "%F%P: invalid common page size `%s\'\n";
      pcVar10 = (char *)(*(int *)puVar1 + 0x11);
    }
  }
  else {
    if (param_1 == 0x192) {
      DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ | 0x1e0;
      DAT_001c0e9c = DAT_001c0e9c | 4;
      return 1;
    }
    if (0x192 < (int)param_1) {
      if (param_1 == 0x196) {
        pbVar3 = *(byte **)PTR_optarg_001befe4;
        iVar8 = 5;
        bVar12 = false;
        bVar14 = (_DAT_001c0e24 & 0xf3) == 0;
        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffff3;
        pbVar9 = pbVar3;
        pbVar11 = &DAT_000a55a5;
        do {
          if (iVar8 == 0) break;
          iVar8 = iVar8 + -1;
          bVar12 = *pbVar9 < *pbVar11;
          bVar14 = *pbVar9 == *pbVar11;
          pbVar9 = pbVar9 + 1;
          pbVar11 = pbVar11 + 1;
        } while (bVar14);
        bVar13 = false;
        bVar12 = (!bVar12 && !bVar14) == bVar12;
        if (bVar12) {
          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 4;
          return 1;
        }
        iVar8 = 4;
        pbVar9 = pbVar3;
        pbVar11 = &DAT_000a5597;
        do {
          if (iVar8 == 0) break;
          iVar8 = iVar8 + -1;
          bVar13 = *pbVar9 < *pbVar11;
          bVar12 = *pbVar9 == *pbVar11;
          pbVar9 = pbVar9 + 1;
          pbVar11 = pbVar11 + 1;
        } while (bVar12);
        bVar14 = false;
        bVar12 = (!bVar13 && !bVar12) == bVar13;
        if (bVar12) {
          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 8;
          return 1;
        }
        iVar8 = 5;
        pbVar9 = pbVar3;
        pbVar11 = &DAT_000a55aa;
        do {
          if (iVar8 == 0) break;
          iVar8 = iVar8 + -1;
          bVar14 = *pbVar9 < *pbVar11;
          bVar12 = *pbVar9 == *pbVar11;
          pbVar9 = pbVar9 + 1;
          pbVar11 = pbVar11 + 1;
        } while (bVar12);
        if ((!bVar14 && !bVar12) == bVar14) {
          _DAT_001c0e24 = CONCAT31(_DAT_001c0e25,uVar2) & 0xfffffff3 | 0xc;
          return 1;
        }
        pcVar10 = "%F%P: invalid hash style `%s\'\n";
        goto LAB_0004fd61;
      }
      if ((int)param_1 < 0x197) {
        if (param_1 == 0x194) {
          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff;
          return 1;
        }
        if ((int)param_1 < 0x195) {
          DAT_001c0e20._2_2_ = DAT_001c0e20._2_2_ & 0x3fff | 0x4000;
          return 1;
        }
        FUN_00026b90(*(undefined4 *)PTR_optarg_001befe4);
        return 1;
      }
      if (param_1 == 0x198) {
        FUN_0004f470();
        return 1;
      }
      if ((int)param_1 < 0x198) {
        if (DAT_001c0aa4 != (void *)0x0) {
          free(DAT_001c0aa4);
          DAT_001c0aa4 = (void *)0x0;
        }
        pbVar3 = *(byte **)PTR_optarg_001befe4;
        bVar12 = false;
        bVar14 = pbVar3 == (byte *)0x0;
        if (bVar14) {
          pbVar3 = &DAT_000732c8;
          *(undefined1 **)PTR_optarg_001befe4 = &DAT_000732c8;
        }
        else {
          iVar8 = 5;
          pbVar9 = pbVar3;
          pbVar11 = (byte *)0x6ebed;
          do {
            if (iVar8 == 0) break;
            iVar8 = iVar8 + -1;
            bVar12 = *pbVar9 < *pbVar11;
            bVar14 = *pbVar9 == *pbVar11;
            pbVar9 = pbVar9 + (uint)bVar15 * -2 + 1;
            pbVar11 = pbVar11 + (uint)bVar15 * -2 + 1;
          } while (bVar14);
          if ((!bVar12 && !bVar14) == bVar12) {
            return 1;
          }
        }
        DAT_001c0aa4 = (void *)xstrdup(pbVar3);
        return 1;
      }
      if (param_1 != 0x199) {
        return 0;
      }
      pcVar10 = *(char **)PTR_optarg_001befe4;
      iVar8 = strcasecmp(pcVar10,"none");
      if (iVar8 == 0) {
        DAT_001c0e2c = 0;
        return 1;
      }
      iVar8 = strcasecmp(pcVar10,"zlib");
      if (iVar8 != 0) {
        iVar8 = strcasecmp(pcVar10,"zlib-gnu");
        if (iVar8 == 0) {
          DAT_001c0e2c = 3;
          return 1;
        }
        iVar8 = strcasecmp(pcVar10,"zlib-gabi");
        if (iVar8 != 0) {
          pcVar4 = "%F%P: invalid --compress-debug-sections option: `%s\'\n";
          goto LAB_0004f9a8;
        }
      }
      DAT_001c0e2c = 5;
      return 1;
    }
    if (param_1 == 0x14d) {
      DAT_001bfd3c = 0xffffffff;
      return 1;
    }
    if (0x14d < (int)param_1) {
      if (param_1 == 400) {
        _DAT_001c0e24 = _DAT_001c0e24 & 0xfffffeff;
        return 1;
      }
      if ((int)param_1 < 0x191) {
        if (param_1 == 0x14e) {
          DAT_001bfd40 = 1;
          return 1;
        }
        return 0;
      }
      _DAT_001c0e24 = _DAT_001c0e24 | 0x100;
      return 1;
    }
    if (param_1 != 0x14b) {
      if (param_1 == 0x14c) {
        DAT_001bfd34 = 0;
        return 1;
      }
      return 0;
    }
    DAT_001bfd34 = 1;
    if (*(char **)PTR_optarg_001befe4 == (char *)0x0) {
      DAT_001bfd34 = 1;
      return 1;
    }
    DAT_001bfd44 = strtoul(*(char **)PTR_optarg_001befe4,local_20,0);
    DAT_001bfd48 = 0;
    if (((*local_20[0] == '\0') &&
        (iVar8 = (DAT_001bfd44 != 0) - 1,
        iVar8 != 0 || (uint)-iVar8 < (uint)(0xffe < DAT_001bfd44 - 1))) &&
       ((DAT_001bfd44 - 1 & DAT_001bfd44) == 0)) {
      DAT_001bfd48 = 0;
      return 1;
    }
    pcVar10 = *(char **)puVar1;
    pcVar4 = "%F%P: invalid pagesize `%s\'\n";
  }
LAB_0004f9a8:
  uVar7 = dcgettext(0,pcVar4,5);
  FUN_00034d60(uVar7,pcVar10);
  return 1;
}

