
/* WARNING: Function: __x86.get_pc_thunk.ax replaced with injection: get_pc_thunk_ax */
/* WARNING: Unknown calling convention */

void read_a_source_file(char *name)

{
  size_t sVar1;
  byte bVar2;
  byte bVar3;
  byte bVar4;
  code *pcVar5;
  undefined *puVar6;
  char c;
  char cVar7;
  byte *pbVar8;
  char *pcVar9;
  byte *pbVar10;
  void *pvVar11;
  char *pcVar12;
  char *pcVar13;
  size_t sVar14;
  int iVar15;
  uint uVar16;
  size_t sVar17;
  bool bVar18;
  bool bVar19;
  byte bVar20;
  addressT aVar21;
  char *local_34;
  char *s;
  sb sbuf;
  
  bVar20 = 0;
  found_comment = 0;
  buffer = input_scrub_new_file(name);
  listing_file(name);
  listing_newline((char *)0x0);
  register_dependency(name);
  if (debug_type == DEBUG_STABS) {
    stabs_generate_asm_file();
  }
LAB_00036ffa:
  do {
    buffer_limit = input_scrub_next_buffer(&input_line_pointer);
    if (buffer_limit == (char *)0x0) {
LAB_00037649:
      symbol_set_value_now((symbolS *)PTR_dot_symbol_0007ff6c);
      input_scrub_close();
      if ((warn_comment != 0) && (found_comment != 0)) {
        as_warn_where(found_comment_file,found_comment,"first comment found here");
        return;
      }
      return;
    }
    read_a_source_file::lexical_block_7::last_eol = (char *)0x0;
    pbVar8 = (byte *)input_line_pointer;
LAB_00037040:
    input_line_pointer = (char *)pbVar8;
  } while (buffer_limit <= input_line_pointer);
LAB_00037044:
  cVar7 = is_end_of_line[(byte)input_line_pointer[-1]];
  if (cVar7 == '\0') {
    if (listing != 0) {
LAB_00037065:
      if (((listing & 0x40U) == 0) || (macro_nest < 1)) {
        listing_newline((char *)0x0);
      }
      else {
        s = _find_end_of_line(input_line_pointer,0,0,0);
        if (read_a_source_file::lexical_block_7::last_eol != s) {
          sVar14 = (int)s - (int)input_line_pointer;
          read_a_source_file::lexical_block_7::last_eol = s;
          pcVar9 = (char *)xmalloc(sVar14 + macro_nest + 2);
          iVar15 = macro_nest;
          memset(pcVar9,0x3e,macro_nest);
          pcVar9[iVar15] = ' ';
          memcpy(pcVar9 + macro_nest + 1,input_line_pointer,sVar14);
          pcVar9[macro_nest + sVar14 + 1] = '\0';
          listing_newline(pcVar9);
        }
      }
      if (cVar7 != '\0') goto LAB_00037094;
    }
  }
  else {
    symbol_set_value_now((symbolS *)PTR_dot_symbol_0007ff6c);
    if (input_line_pointer[-1] == '\n') {
      bump_line_counters();
    }
    if (listing != 0) goto LAB_00037065;
LAB_00037094:
    line_label = (symbolS *)0x0;
  }
  do {
    puVar6 = PTR__sch_istable_0007ff84;
    pbVar8 = (byte *)input_line_pointer + 1;
    bVar2 = *input_line_pointer;
    uVar16 = (uint)bVar2;
    input_line_pointer = (char *)pbVar8;
    if (0x17 < (byte)(uVar16 - 9)) {
      bVar3 = lex_type[uVar16];
      goto joined_r0x000370d3;
    }
  } while ((0x800009U >> (uVar16 - 9 & 0x1f) & 1) != 0);
  bVar3 = lex_type[uVar16];
joined_r0x000370d3:
  if (((bVar3 & 2) == 0) && (bVar2 != 0x22)) {
    if (is_end_of_line[uVar16] != '\0') goto LAB_00037040;
    if ((PTR__sch_istable_0007ff84[uVar16 * 2] & 4) != 0) {
      iVar15 = ignore_input();
      if (iVar15 != 0) goto LAB_00037509;
      iVar15 = (char)bVar2 + -0x30;
      bVar3 = *input_line_pointer;
      bVar4 = puVar6[(uint)bVar3 * 2];
      pbVar10 = (byte *)input_line_pointer;
      while ((bVar4 & 4) != 0) {
        pbVar10 = pbVar10 + 1;
        iVar15 = (char)bVar3 + -0x30 + iVar15 * 10;
        bVar3 = *pbVar10;
        bVar4 = puVar6[(uint)bVar3 * 2];
      }
      input_line_pointer = (char *)(pbVar10 + 1);
      if (*pbVar10 == 0x3a) {
        fb_label_instance_inc(iVar15);
        pcVar9 = fb_label_name(iVar15,0);
        colon(pcVar9);
        pbVar8 = (byte *)input_line_pointer;
        goto LAB_00037040;
      }
    }
    input_line_pointer = (char *)pbVar8;
    if (bVar2 == 0) goto LAB_00037439;
    pcVar9 = strchr(PTR_line_comment_chars_0007ffa0,(int)(char)bVar2);
    bVar18 = false;
    bVar19 = pcVar9 == (char *)0x0;
    if (bVar19) goto LAB_00037439;
    s = input_line_pointer;
    iVar15 = 4;
    pbVar8 = (byte *)input_line_pointer;
    pbVar10 = &DAT_0005e3fa;
    do {
      if (iVar15 == 0) break;
      iVar15 = iVar15 + -1;
      bVar18 = *pbVar8 < *pbVar10;
      bVar19 = *pbVar8 == *pbVar10;
      pbVar8 = pbVar8 + (uint)bVar20 * -2 + 1;
      pbVar10 = pbVar10 + (uint)bVar20 * -2 + 1;
    } while (bVar19);
    if ((!bVar18 && !bVar19) == bVar18) {
      bump_line_counters();
      pcVar9 = s + 4;
      s = pcVar9;
      pcVar12 = strstr(pcVar9,"#NO_APP\n");
      if (pcVar12 == (char *)0x0) {
        sVar14 = (int)buffer_limit - (int)pcVar9;
        local_34 = (char *)xmalloc(sVar14 + 1);
        memcpy(local_34,s,sVar14);
        while (pcVar12 = input_scrub_next_buffer(&buffer), pcVar9 = buffer, pcVar12 != (char *)0x0)
        {
          input_line_pointer = buffer;
          buffer_limit = pcVar12;
          pcVar13 = strstr(buffer,"#NO_APP\n");
          if (pcVar13 != (char *)0x0) {
            sVar17 = (int)pcVar13 - (int)pcVar9;
            sVar1 = sVar14 + sVar17;
            local_34 = (char *)xrealloc(local_34,sVar1);
            memcpy(local_34 + sVar14,buffer,sVar17);
            input_line_pointer = pcVar13 + 8;
            sVar14 = sVar1;
            goto LAB_00037b57;
          }
          sVar17 = (int)pcVar12 - (int)pcVar9;
          sVar1 = sVar14 + sVar17;
          local_34 = (char *)xrealloc(local_34,sVar1);
          memcpy(local_34 + sVar14,buffer,sVar17);
          sVar14 = sVar1;
        }
        input_line_pointer = (char *)0x0;
LAB_00037b57:
        s = local_34;
        pcVar12 = local_34 + sVar14;
        scrub_string = local_34;
      }
      else {
        input_line_pointer = pcVar12 + 8;
        local_34 = (char *)0x0;
        scrub_string = pcVar9;
      }
      iVar15 = (int)pcVar12 - (int)scrub_string;
      scrub_string_end = pcVar12;
      pcVar9 = (char *)xmalloc(iVar15);
      pcVar12 = pcVar9;
      while (pcVar13 = (char *)do_scrub_chars(scrub_from_string,pcVar9,
                                              (size_t)(pcVar12 + (iVar15 - (int)pcVar9))),
            pcVar12 + (iVar15 - (int)pcVar9) <= pcVar13) {
        pcVar12 = (char *)xrealloc(pcVar12,iVar15 + 100);
        pcVar9 = pcVar12 + iVar15;
        iVar15 = iVar15 + 100;
      }
      pcVar9[(int)pcVar13] = '\0';
      if (local_34 != (char *)0x0) {
        free(local_34);
      }
      sVar14 = strlen(pcVar12);
      sb_build(&sbuf,sVar14);
      sb_add_buffer(&sbuf,pcVar12,sVar14);
      input_scrub_include_sb(&sbuf,input_line_pointer,0);
      sb_kill(&sbuf);
      pcVar9 = input_scrub_next_buffer(&input_line_pointer);
      buffer_limit = pcVar9;
      free(pcVar12);
    }
    else {
      ignore_rest_of_line();
      pcVar9 = buffer_limit;
    }
    if (pcVar9 <= input_line_pointer) goto LAB_00036ffa;
    goto LAB_00037044;
  }
  iVar15 = ignore_input();
  if (iVar15 != 0) {
    pcVar9 = _find_end_of_line(input_line_pointer + -1,0,0,0);
    if (input_line_pointer <= buffer_limit) goto LAB_00037376;
    goto LAB_0003737c;
  }
  input_line_pointer = input_line_pointer + -1;
  c = get_symbol_name(&s);
  pbVar8 = (byte *)s;
  iVar15 = 1;
  cVar7 = c;
  if (c == '\"') {
    cVar7 = input_line_pointer[1];
    iVar15 = 2;
  }
  pcVar9 = input_line_pointer + iVar15;
  if (cVar7 == ':') {
    line_label = colon(s);
    restore_line_pointer(c);
    pbVar8 = (byte *)(input_line_pointer + 1);
    if (input_line_pointer[1] == ' ') {
      pbVar8 = (byte *)(input_line_pointer + 2);
    }
    goto LAB_00037040;
  }
  if (cVar7 == '=') {
    if (*pcVar9 == '=') goto LAB_00037691;
LAB_0003746c:
    iVar15 = 1;
  }
  else {
    if (((cVar7 != ' ') && (cVar7 != '\t')) || (*pcVar9 != '=')) {
      strncpy(original_case_string,s,0x80);
      puVar6 = PTR__sch_tolower_0007ffcc;
      original_case_string[0x7f] = 0;
      bVar2 = *pbVar8;
      if (bVar2 == 0) goto LAB_0003726e;
      do {
        *pbVar8 = puVar6[bVar2];
        bVar2 = pbVar8[1];
        pbVar8 = pbVar8 + 1;
      } while (bVar2 != 0);
      if (*s == '.') {
        pvVar11 = hash_find(po_hash,s + 1);
        if ((pvVar11 == (void *)0x0) ||
           (pcVar5 = *(code **)((int)pvVar11 + 4), pcVar5 == (code *)0x0)) {
          if (mri_pending_align != 0) {
            do_align(1,(char *)0x0,0,0);
            mri_pending_align = 0;
            if (line_label != (symbolS *)0x0) {
              symbol_set_frag(line_label,frag_now);
              aVar21 = frag_now_fix();
              S_SET_VALUE(line_label,aVar21);
            }
          }
          pcVar12 = input_line_pointer;
          restore_line_pointer(c);
          ignore_rest_of_line();
          cVar7 = input_line_pointer[-1];
          pcVar9 = input_line_pointer + -1;
          input_line_pointer = input_line_pointer + -1;
          *pcVar9 = '\0';
          if ((macro_defined == 0) ||
             (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {
            pcVar9 = s;
            *pcVar12 = '\0';
            pcVar12 = (char *)dcgettext(0,"unknown pseudo-op: `%s\'");
            as_bad(pcVar12,pcVar9);
            pcVar9 = input_line_pointer + 1;
            *input_line_pointer = cVar7;
            input_line_pointer = pcVar9;
            pbVar8 = (byte *)input_line_pointer;
          }
        }
        else {
          if ((mri_pending_align != 0) &&
             ((((pcVar5 != s_space && (pcVar5 != cons)) || (*(int *)((int)pvVar11 + 8) != 1)) &&
              (((((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)
                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&
                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)
                && pcVar5 != (code *)PTR_s_endif_0007ff5c) && pcVar5 != s_globl &&
               (pcVar5 != s_ignore)))))) {
            do_align(1,(char *)0x0,0,0);
            mri_pending_align = 0;
            if (line_label != (symbolS *)0x0) {
              symbol_set_frag(line_label,frag_now);
              aVar21 = frag_now_fix();
              S_SET_VALUE(line_label,aVar21);
            }
          }
          cVar7 = restore_line_pointer(c);
          if ((cVar7 == ' ') || (cVar7 == '\t')) {
            input_line_pointer = input_line_pointer + 1;
          }
          (**(code **)((int)pvVar11 + 4))(*(undefined4 *)((int)pvVar11 + 8));
          pbVar8 = (byte *)input_line_pointer;
          if (*(code **)((int)pvVar11 + 4) == s_end) goto LAB_00037649;
        }
      }
      else {
LAB_0003726e:
        restore_line_pointer(c);
        input_line_pointer = _find_end_of_line(input_line_pointer,0,1,0);
        cVar7 = *input_line_pointer;
        *input_line_pointer = '\0';
        generate_lineno_debug();
        if ((macro_defined == 0) ||
           (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {
          if (mri_pending_align != 0) {
            do_align(1,(char *)0x0,0,0);
            mri_pending_align = 0;
            if (line_label != (symbolS *)0x0) {
              symbol_set_frag(line_label,frag_now);
              aVar21 = frag_now_fix();
              S_SET_VALUE(line_label,aVar21);
            }
          }
          md_assemble(s);
          if (input_line_pointer == (char *)0x0) {
            pcVar9 = (char *)dcgettext(0,"unable to continue with assembly.",5);
                    /* WARNING: Subroutine does not return */
            as_fatal(pcVar9);
          }
          pcVar9 = input_line_pointer + 1;
          *input_line_pointer = cVar7;
          input_line_pointer = pcVar9;
          pbVar8 = (byte *)input_line_pointer;
        }
      }
      goto LAB_00037040;
    }
    if (pcVar9[1] != '=') goto LAB_0003746c;
LAB_00037691:
    iVar15 = -1;
  }
  equals(s,iVar15);
  demand_empty_rest_of_line();
  pbVar8 = (byte *)input_line_pointer;
  goto LAB_00037040;
LAB_00037439:
  iVar15 = ignore_input();
  if (iVar15 == 0) {
    input_line_pointer = input_line_pointer + -1;
    demand_empty_rest_of_line();
    pbVar8 = (byte *)input_line_pointer;
    goto LAB_00037040;
  }
LAB_00037509:
  pcVar9 = _find_end_of_line(input_line_pointer + -1,0,0,0);
  if (input_line_pointer <= buffer_limit) {
LAB_00037376:
    pbVar8 = (byte *)buffer_limit;
    if (buffer_limit <= pcVar9) goto LAB_00037040;
  }
LAB_0003737c:
  pbVar8 = (byte *)(pcVar9 + 1);
  goto LAB_00037040;
}



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

void FUN_00036f80(undefined4 param_1)

{
  byte bVar1;
  code *pcVar2;
  undefined *puVar3;
  byte bVar4;
  char cVar5;
  byte *pbVar6;
  char *pcVar7;
  size_t sVar8;
  void *__s;
  byte *pbVar9;
  char *__s_00;
  char *pcVar10;
  size_t sVar11;
  undefined4 uVar12;
  int iVar13;
  byte bVar14;
  uint uVar15;
  size_t sVar16;
  undefined4 extraout_EDX;
  bool bVar17;
  bool bVar18;
  byte bVar19;
  undefined8 uVar20;
  byte *local_34;
  byte *local_2c;
  undefined1 local_28 [24];
  
  bVar19 = 0;
  DAT_00088e0c = 0;
  DAT_00088a38 = (byte *)FUN_00028de0(param_1);
  FUN_0002b740(param_1);
  FUN_0002a220(0);
  FUN_0001ccd0(param_1);
  if (DAT_000886b8 == 2) {
    FUN_00038cd0();
  }
LAB_00036ffa:
  do {
    DAT_00088a34 = (byte *)FUN_00028fd0(&DAT_00088f58);
    if (DAT_00088a34 == (byte *)0x0) {
LAB_00037649:
      FUN_0003e1c0(PTR_DAT_0007ff6c);
      FUN_00028fa0();
      if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {
        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");
        return;
      }
      return;
    }
    DAT_00088a0c = (byte *)0x0;
    pbVar6 = DAT_00088f58;
LAB_00037040:
    DAT_00088f58 = pbVar6;
  } while (DAT_00088a34 <= DAT_00088f58);
LAB_00037044:
  cVar5 = (&DAT_000802c0)[DAT_00088f58[-1]];
  if (cVar5 == '\0') {
    if (_DAT_00088e00 != 0) {
LAB_00037065:
      if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {
        FUN_0002a220(0);
      }
      else {
        local_2c = (byte *)FUN_0002f7d0(0);
        if (DAT_00088a0c != local_2c) {
          sVar8 = (int)local_2c - (int)DAT_00088f58;
          DAT_00088a0c = local_2c;
          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);
          sVar11 = DAT_00088f14;
          memset(__s,0x3e,DAT_00088f14);
          *(undefined1 *)((int)__s + sVar11) = 0x20;
          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);
          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;
          FUN_0002a220(__s);
        }
      }
      if (cVar5 != '\0') goto LAB_00037094;
    }
  }
  else {
    FUN_0003e1c0(PTR_DAT_0007ff6c);
    if (DAT_00088f58[-1] == 10) {
      FUN_00029290();
    }
    if (_DAT_00088e00 != 0) goto LAB_00037065;
LAB_00037094:
    DAT_00088f48 = 0;
  }
  do {
    puVar3 = PTR__sch_istable_0007ff84;
    pbVar6 = DAT_00088f58 + 1;
    bVar14 = *DAT_00088f58;
    uVar15 = (uint)bVar14;
    DAT_00088f58 = pbVar6;
    if (0x17 < (byte)(uVar15 - 9)) {
      bVar4 = (&DAT_000803c0)[uVar15];
      goto joined_r0x000370d3;
    }
  } while ((0x800009U >> (uVar15 - 9 & 0x1f) & 1) != 0);
  bVar4 = (&DAT_000803c0)[uVar15];
joined_r0x000370d3:
  if (((bVar4 & 2) == 0) && (bVar14 != 0x22)) {
    if ((&DAT_000802c0)[uVar15] != '\0') goto LAB_00037040;
    if ((PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0) {
      iVar13 = FUN_0001c860();
      if (iVar13 != 0) goto LAB_00037509;
      iVar13 = (char)bVar14 + -0x30;
      bVar4 = *DAT_00088f58;
      bVar1 = puVar3[(uint)bVar4 * 2];
      pbVar9 = DAT_00088f58;
      while ((bVar1 & 4) != 0) {
        pbVar9 = pbVar9 + 1;
        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;
        bVar4 = *pbVar9;
        bVar1 = puVar3[(uint)bVar4 * 2];
      }
      DAT_00088f58 = pbVar9 + 1;
      if (*pbVar9 == 0x3a) {
        FUN_0003a8d0(iVar13);
        uVar12 = FUN_0003aa40(iVar13,0);
        FUN_0003d480(uVar12);
        pbVar6 = DAT_00088f58;
        goto LAB_00037040;
      }
    }
    DAT_00088f58 = pbVar6;
    if (bVar14 == 0) goto LAB_00037439;
    pcVar7 = strchr(PTR_DAT_0007ffa0,(int)(char)bVar14);
    bVar17 = false;
    bVar18 = pcVar7 == (char *)0x0;
    if (bVar18) goto LAB_00037439;
    local_2c = DAT_00088f58;
    iVar13 = 4;
    pbVar6 = DAT_00088f58;
    pbVar9 = &DAT_0005e3fa;
    do {
      if (iVar13 == 0) break;
      iVar13 = iVar13 + -1;
      bVar17 = *pbVar6 < *pbVar9;
      bVar18 = *pbVar6 == *pbVar9;
      pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;
      pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;
    } while (bVar18);
    if ((!bVar17 && !bVar18) == bVar17) {
      FUN_00029290();
      pbVar6 = local_2c + 4;
      local_2c = pbVar6;
      pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");
      if (pbVar9 == (byte *)0x0) {
        sVar11 = (int)DAT_00088a34 - (int)pbVar6;
        local_34 = (byte *)xmalloc(sVar11 + 1);
        memcpy(local_34,local_2c,sVar11);
        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,
              pbVar9 != (byte *)0x0) {
          DAT_00088f58 = DAT_00088a38;
          DAT_00088a34 = pbVar9;
          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");
          if (pcVar7 != (char *)0x0) {
            sVar16 = (int)pcVar7 - (int)pbVar6;
            sVar8 = sVar11 + sVar16;
            local_34 = (byte *)xrealloc(local_34,sVar8);
            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);
            DAT_00088f58 = (byte *)(pcVar7 + 8);
            sVar11 = sVar8;
            goto LAB_00037b57;
          }
          sVar16 = (int)pbVar9 - (int)pbVar6;
          sVar8 = sVar11 + sVar16;
          local_34 = (byte *)xrealloc(local_34,sVar8);
          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);
          sVar11 = sVar8;
        }
        DAT_00088f58 = (byte *)0x0;
LAB_00037b57:
        local_2c = local_34;
        pbVar9 = local_34 + sVar11;
        DAT_00088a1c = local_34;
      }
      else {
        DAT_00088f58 = pbVar9 + 8;
        local_34 = (byte *)0x0;
        DAT_00088a1c = pbVar6;
      }
      iVar13 = (int)pbVar9 - (int)DAT_00088a1c;
      DAT_00088a18 = pbVar9;
      pcVar7 = (char *)xmalloc(iVar13);
      __s_00 = pcVar7;
      while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),
            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {
        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);
        pcVar7 = __s_00 + iVar13;
        iVar13 = iVar13 + 100;
      }
      pcVar7[(int)pcVar10] = '\0';
      if (local_34 != (byte *)0x0) {
        free(local_34);
      }
      sVar11 = strlen(__s_00);
      FUN_00038130(local_28,sVar11);
      FUN_00038310(local_28,__s_00,sVar11);
      FUN_00028ea0(local_28,DAT_00088f58,0);
      FUN_000381b0(local_28);
      pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);
      DAT_00088a34 = pbVar6;
      free(__s_00);
    }
    else {
      FUN_00030fc0();
      pbVar6 = DAT_00088a34;
    }
    if (pbVar6 <= DAT_00088f58) goto LAB_00036ffa;
    goto LAB_00037044;
  }
  iVar13 = FUN_0001c860();
  if (iVar13 != 0) {
    pbVar9 = (byte *)FUN_0002f7d0(0);
    if (DAT_00088f58 <= DAT_00088a34) goto LAB_00037376;
    goto LAB_0003737c;
  }
  DAT_00088f58 = DAT_00088f58 + -1;
  bVar4 = FUN_00025220(&local_2c);
  pbVar6 = local_2c;
  iVar13 = 1;
  bVar14 = bVar4;
  if (bVar4 == 0x22) {
    bVar14 = DAT_00088f58[1];
    iVar13 = 2;
  }
  pbVar9 = DAT_00088f58 + iVar13;
  if (bVar14 == 0x3a) {
    DAT_00088f48 = FUN_0003d480(local_2c);
    FUN_00027230((int)(char)bVar4);
    pbVar6 = DAT_00088f58 + 1;
    if (DAT_00088f58[1] == 0x20) {
      pbVar6 = DAT_00088f58 + 2;
    }
    goto LAB_00037040;
  }
  if (bVar14 == 0x3d) {
    if (*pbVar9 == 0x3d) goto LAB_00037691;
LAB_0003746c:
    uVar12 = 1;
  }
  else {
    if (((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d)) {
      strncpy(&DAT_00088f60,(char *)local_2c,0x80);
      puVar3 = PTR__sch_tolower_0007ffcc;
      DAT_00088fdf = 0;
      bVar14 = *pbVar6;
      if (bVar14 == 0) goto LAB_0003726e;
      do {
        *pbVar6 = puVar3[bVar14];
        bVar14 = pbVar6[1];
        pbVar6 = pbVar6 + 1;
      } while (bVar14 != 0);
      if (*local_2c == 0x2e) {
        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);
        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {
          if (DAT_00088a30 != 0) {
            FUN_000307b0(1,0,0,0);
            DAT_00088a30 = 0;
            if (DAT_00088f48 != 0) {
              FUN_0003e160(DAT_00088f48,DAT_00088e84);
              uVar20 = FUN_00027cf0();
              FUN_0003ae10(DAT_00088f48,uVar20);
            }
          }
          pbVar9 = DAT_00088f58;
          FUN_00027230((int)(char)bVar4);
          FUN_00030fc0();
          bVar14 = DAT_00088f58[-1];
          pbVar6 = DAT_00088f58 + -1;
          DAT_00088f58 = DAT_00088f58 + -1;
          *pbVar6 = 0;
          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))
          {
            pbVar6 = local_2c;
            *pbVar9 = 0;
            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);
            FUN_0002ec90(uVar12,pbVar6);
            pbVar6 = DAT_00088f58 + 1;
            *DAT_00088f58 = bVar14;
            DAT_00088f58 = pbVar6;
            pbVar6 = DAT_00088f58;
          }
        }
        else {
          if ((DAT_00088a30 != 0) &&
             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))
              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&
                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&
                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&
                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {
            FUN_000307b0(1,0,0,0);
            DAT_00088a30 = 0;
            if (DAT_00088f48 != 0) {
              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);
              uVar20 = FUN_00027cf0();
              FUN_0003ae10(DAT_00088f48,uVar20);
            }
          }
          cVar5 = FUN_00027230((int)(char)bVar4);
          if ((cVar5 == ' ') || (cVar5 == '\t')) {
            DAT_00088f58 = DAT_00088f58 + 1;
          }
          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));
          pbVar6 = DAT_00088f58;
          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;
        }
      }
      else {
LAB_0003726e:
        FUN_00027230((int)(char)bVar4);
        DAT_00088f58 = (byte *)FUN_0002f7d0(0);
        bVar14 = *DAT_00088f58;
        *DAT_00088f58 = 0;
        FUN_00036f40();
        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {
          if (DAT_00088a30 != 0) {
            FUN_000307b0(1,0,0,0);
            DAT_00088a30 = 0;
            if (DAT_00088f48 != 0) {
              FUN_0003e160(DAT_00088f48,DAT_00088e84);
              uVar20 = FUN_00027cf0();
              FUN_0003ae10(DAT_00088f48,uVar20);
            }
          }
          FUN_00048cd0(local_2c);
          if (DAT_00088f58 == (byte *)0x0) {
            uVar12 = dcgettext(0,"unable to continue with assembly.",5);
                    /* WARNING: Subroutine does not return */
            FUN_0002ed30(uVar12);
          }
          pbVar6 = DAT_00088f58 + 1;
          *DAT_00088f58 = bVar14;
          DAT_00088f58 = pbVar6;
          pbVar6 = DAT_00088f58;
        }
      }
      goto LAB_00037040;
    }
    if (pbVar9[1] != 0x3d) goto LAB_0003746c;
LAB_00037691:
    uVar12 = 0xffffffff;
  }
  FUN_00036d70(local_2c,uVar12);
  FUN_00031210();
  pbVar6 = DAT_00088f58;
  goto LAB_00037040;
LAB_00037439:
  iVar13 = FUN_0001c860();
  if (iVar13 == 0) {
    DAT_00088f58 = DAT_00088f58 + -1;
    FUN_00031210();
    pbVar6 = DAT_00088f58;
    goto LAB_00037040;
  }
LAB_00037509:
  pbVar9 = (byte *)FUN_0002f7d0(0);
  if (DAT_00088f58 <= DAT_00088a34) {
LAB_00037376:
    pbVar6 = DAT_00088a34;
    if (DAT_00088a34 <= pbVar9) goto LAB_00037040;
  }
LAB_0003737c:
  pbVar6 = pbVar9 + 1;
  goto LAB_00037040;
}


CALL 0x0001ad6a
ADD EAX,0x4907b
PUSH EBP
PUSH EDI
PUSH ESI
PUSH EBX
SUB ESP,0x48
LEA EBX,[EAX + 0x8e0c]
MOV EDI,EAX
MOV ESI,dword ptr [ESP + 0x5c]
MOV dword ptr [ESP + 0xc],EAX
MOV dword ptr [ESP + 0x28],EBX
MOV dword ptr [EBX],0x0
MOV EBX,EAX
PUSH ESI
CALL 0x00028de0
MOV dword ptr [ESP],ESI
MOV dword ptr [EDI + 0x8a38],EAX
CALL 0x0002b740
MOV dword ptr [ESP],0x0
CALL 0x0002a220
MOV dword ptr [ESP],ESI
CALL 0x0001ccd0
LEA EAX,[EDI + 0x86b8]
ADD ESP,0x10
CMP dword ptr [EAX],0x2
JZ 0x00037a51
MOV EAX,dword ptr [ESP]
LEA EBP,[EAX + 0x8f58]
LEA EAX,[EAX + 0x8e00]
MOV dword ptr [ESP + 0x8],EAX
SUB ESP,0xc
PUSH EBP
MOV EDI,dword ptr [ESP + 0x10]
MOV EBX,EDI
CALL 0x00028fd0
ADD ESP,0x10
MOV ESI,EAX
MOV dword ptr [EDI + 0x8a34],ESI
TEST ESI,ESI
JZ 0x00037649
MOV EAX,dword ptr [ESP]
MOV EDI,dword ptr [EBP]
MOV dword ptr [EAX + 0x8a0c],0x0
LEA EAX,[EAX + 0x8f48]
MOV dword ptr [ESP + 0x10],EAX
LEA ESI,[ESI]
LEA ESI,[ESI]
CMP ESI,EDI
JBE 0x00036ffa
MOVZX EAX,byte ptr [EDI + -0x1]
MOV ESI,dword ptr [ESP]
MOVSX ESI,byte ptr [ESI + EAX*0x1 + 0x2c0]
TEST ESI,ESI
JNZ 0x00037308
MOV EAX,dword ptr [ESP + 0x8]
MOV EAX,dword ptr [EAX]
TEST EAX,EAX
JZ 0x0003709e
TEST AL,0x40
JZ 0x0003707c
MOV EBX,dword ptr [ESP]
LEA EDI,[EBX + 0x8f14]
MOV EAX,dword ptr [EDI]
TEST EAX,EAX
JG 0x00037392
SUB ESP,0xc
PUSH 0x0
MOV EBX,dword ptr [ESP + 0x10]
CALL 0x0002a220
ADD ESP,0x10
MOV EDI,dword ptr [EBP]
TEST ESI,ESI
JZ 0x0003709e
MOV EAX,dword ptr [ESP + 0x10]
MOV dword ptr [EAX],0x0
LEA EAX,[EDI + 0x1]
MOV EBX,0x800009
LEA ESI,[ESI]
LEA ESI,[ESI]
MOV dword ptr [EBP],EAX
MOVZX EDX,byte ptr [EAX + -0x1]
MOV EDI,EAX
LEA ECX,[EDX + -0x9]
CMP CL,0x17
JBE 0x00037180
MOV ESI,dword ptr [ESP]
MOVZX EAX,DL
TEST byte ptr [ESI + EAX*0x1 + 0x3c0],0x2
JNZ 0x000371a0
CMP DL,0x22
JZ 0x000371a0
MOV ESI,dword ptr [ESP]
CMP byte ptr [ESI + EAX*0x1 + 0x2c0],0x0
JNZ 0x00037387
MOVSX ESI,DL
MOV dword ptr [ESP + 0xc],ESI
MOV ESI,dword ptr [ESP]
MOV ESI,dword ptr [ESI + 0xffffff84]
MOV dword ptr [ESP + 0x4],ESI
TEST byte ptr [ESI + EAX*0x2],0x4
JNZ 0x00037491
TEST DL,DL
JZ 0x00037439
SUB ESP,0x8
PUSH dword ptr [ESP + 0x14]
MOV EDI,dword ptr [ESP + 0xc]
PUSH dword ptr [EDI + 0xffffffa0]
MOV EBX,EDI
CALL 0x00017410
ADD ESP,0x10
TEST EAX,EAX
JZ 0x00037439
MOV ESI,dword ptr [EBP]
MOV ECX,0x4
LEA EDI,[EDI + 0xfffde3fa]
MOV dword ptr [ESP + 0x20],ESI
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x0003776b
CALL 0x00030fc0
MOV ESI,dword ptr [EBX + 0x8a34]
MOV EDI,dword ptr [EBP]
CMP ESI,EDI
JA 0x00037044
JMP 0x00036ffa
ADD EAX,0x1
BT EBX,ECX
JC 0x000370b0
MOV ESI,dword ptr [ESP]
MOVZX EAX,DL
TEST byte ptr [ESI + EAX*0x1 + 0x3c0],0x2
JZ 0x000370d9
MOV EBX,dword ptr [ESP]
CALL 0x0001c860
TEST EAX,EAX
JNZ 0x00037350
SUB ESP,0xc
SUB dword ptr [EBP],0x1
LEA EAX,[ESP + 0x2c]
PUSH EAX
MOV EBX,dword ptr [ESP + 0x10]
CALL 0x00025220
ADD ESP,0x10
MOV ECX,0x1
MOV ESI,EAX
CMP AL,0x22
MOV EAX,dword ptr [EBP]
MOV EDX,ESI
JNZ 0x000371e1
MOVZX EDX,byte ptr [EAX + 0x1]
MOV ECX,0x2
ADD EAX,ECX
MOV EDI,dword ptr [ESP + 0x20]
CMP DL,0x3a
JZ 0x0003769b
CMP DL,0x3d
JZ 0x00037463
CMP DL,0x20
JZ 0x00037203
CMP DL,0x9
JNZ 0x0003720c
CMP byte ptr [EAX],0x3d
JZ 0x00037687
SUB ESP,0x4
PUSH 0x80
PUSH EDI
MOV EAX,dword ptr [ESP + 0xc]
LEA EDX,[EAX + 0x8f60]
MOV EBX,EAX
PUSH EDX
MOV dword ptr [ESP + 0x14],EDX
MOV dword ptr [ESP + 0x10],EAX
CALL 0x000174d0
MOV EDX,dword ptr [ESP + 0x14]
ADD ESP,0x10
MOV byte ptr [EDX + 0x7f],0x0
MOVZX EAX,byte ptr [EDI]
TEST AL,AL
JZ 0x0003726e
MOV EBX,dword ptr [ESP]
MOV EDX,dword ptr [EBX + 0xffffffcc]
LEA ESI,[ESI]
MOVZX EAX,byte ptr [EDX + EAX*0x1]
ADD EDI,0x1
MOV byte ptr [EDI + -0x1],AL
MOVZX EAX,byte ptr [EDI]
TEST AL,AL
JNZ 0x00037250
MOV EAX,dword ptr [ESP + 0x20]
CMP byte ptr [EAX],0x2e
JZ 0x00037545
MOV EAX,ESI
SUB ESP,0xc
MOVSX ESI,AL
PUSH ESI
MOV EDI,dword ptr [ESP + 0x10]
MOV EBX,EDI
CALL 0x00027230
MOV EAX,dword ptr [EBP]
MOV ECX,0x1
XOR EDX,EDX
MOV dword ptr [ESP],0x0
CALL 0x0002f7d0
MOV dword ptr [EBP],EAX
MOVZX ESI,byte ptr [EAX]
MOV byte ptr [EAX],0x0
CALL 0x00036f40
LEA EAX,[EDI + 0x8f1c]
ADD ESP,0x10
MOV EBX,dword ptr [EAX]
TEST EBX,EBX
JNZ 0x000376e0
MOV EAX,dword ptr [ESP]
MOV ECX,dword ptr [EAX + 0x8a30]
TEST ECX,ECX
JNZ 0x00037707
SUB ESP,0xc
PUSH dword ptr [ESP + 0x2c]
MOV EBX,dword ptr [ESP + 0x10]
CALL 0x00048cd0
MOV EAX,dword ptr [EBP]
ADD ESP,0x10
TEST EAX,EAX
JZ 0x00037bb1
LEA EDX,[EAX + 0x1]
MOV EBX,ESI
MOV dword ptr [EBP],EDX
MOV byte ptr [EAX],BL
MOV EAX,dword ptr [ESP]
MOV EDI,dword ptr [EBP]
MOV ESI,dword ptr [EAX + 0x8a34]
JMP 0x00037040
SUB ESP,0xc
MOV EAX,dword ptr [ESP + 0xc]
PUSH dword ptr [EAX + 0xffffff6c]
MOV EBX,EAX
CALL 0x0003e1c0
MOV EAX,dword ptr [EBP]
ADD ESP,0x10
CMP byte ptr [EAX + -0x1],0xa
JZ 0x00037538
MOV EAX,dword ptr [ESP]
LEA EAX,[EAX + 0x8e00]
MOV EAX,dword ptr [EAX]
TEST EAX,EAX
JNZ 0x00037065
MOV EDI,dword ptr [EBP]
JMP 0x00037094
SUB ESP,0xc
MOV EAX,dword ptr [EBP]
XOR ECX,ECX
XOR EDX,EDX
PUSH 0x0
SUB EAX,0x1
CALL 0x0002f7d0
MOV EBX,dword ptr [ESP + 0x10]
ADD ESP,0x10
MOV ESI,dword ptr [EBX + 0x8a34]
CMP dword ptr [EBP],ESI
JA 0x0003737c
MOV EDI,ESI
CMP ESI,EAX
JBE 0x0003737f
LEA EDI,[EAX + 0x1]
MOV dword ptr [EBP],EDI
JMP 0x00037040
MOV ESI,dword ptr [ESI + 0x8a34]
JMP 0x00037040
SUB ESP,0xc
MOV EAX,dword ptr [EBP]
XOR ECX,ECX
XOR EDX,EDX
PUSH 0x0
CALL 0x0002f7d0
MOV dword ptr [ESP + 0x30],EAX
ADD ESP,0x10
CMP dword ptr [EBX + 0x8a0c],EAX
JZ 0x0003708d
SUB ESP,0xc
MOV dword ptr [EBX + 0x8a0c],EAX
SUB EAX,dword ptr [EBP]
MOV dword ptr [ESP + 0x10],EAX
ADD EAX,dword ptr [EDI]
ADD EAX,0x2
PUSH EAX
MOV dword ptr [ESP + 0x10],EBX
CALL 0x00017780
MOV ECX,dword ptr [EDI]
ADD ESP,0xc
PUSH ECX
MOV dword ptr [ESP + 0x1c],ECX
PUSH 0x3e
PUSH EAX
MOV EBX,dword ptr [ESP + 0x10]
MOV dword ptr [ESP + 0x1c],EAX
CALL 0x00017490
MOV EDX,dword ptr [ESP + 0x1c]
MOV ECX,dword ptr [ESP + 0x24]
ADD ESP,0xc
MOV byte ptr [EDX + ECX*0x1],0x20
MOV EAX,dword ptr [EDI]
PUSH dword ptr [ESP + 0x8]
LEA EAX,[EDX + EAX*0x1 + 0x1]
PUSH dword ptr [EBP]
PUSH EAX
MOV EBX,dword ptr [ESP + 0x10]
CALL 0x000170f0
MOV EDX,dword ptr [ESP + 0x1c]
MOV EAX,dword ptr [ESP + 0x14]
MOV EBX,dword ptr [ESP + 0x10]
ADD EAX,EDX
ADD EAX,dword ptr [EDI]
MOV byte ptr [EAX + 0x1],0x0
MOV dword ptr [ESP],EDX
CALL 0x0002a220
ADD ESP,0x10
JMP 0x0003708d
MOV EBX,dword ptr [ESP]
CALL 0x0001c860
TEST EAX,EAX
JNZ 0x00037509
SUB dword ptr [EBP],0x1
CALL 0x00031210
MOV EAX,dword ptr [ESP]
MOV EDI,dword ptr [EBP]
MOV ESI,dword ptr [EAX + 0x8a34]
JMP 0x00037040
CMP byte ptr [EAX],0x3d
JZ 0x00037691
SUB ESP,0x8
PUSH 0x1
PUSH EDI
CALL 0x00036d70
CALL 0x00031210
MOV EAX,dword ptr [ESP + 0x10]
MOV EDI,dword ptr [EBP]
ADD ESP,0x10
MOV ESI,dword ptr [EAX + 0x8a34]
JMP 0x00037040
MOV EBX,dword ptr [ESP]
MOV byte ptr [ESP + 0x14],DL
CALL 0x0001c860
MOVZX EDX,byte ptr [ESP + 0x14]
TEST EAX,EAX
JNZ 0x00037509
MOV EAX,dword ptr [ESP + 0xc]
MOV ECX,dword ptr [ESP + 0x4]
LEA ESI,[EAX + -0x30]
MOV EAX,dword ptr [EBP]
MOVSX EBX,byte ptr [EAX]
MOV dword ptr [ESP + 0x14],EBX
MOVZX EBX,byte ptr [ESP + 0x14]
TEST byte ptr [ECX + EBX*0x2],0x4
JZ 0x000374f2
MOV ECX,dword ptr [ESP + 0x14]
MOV byte ptr [ESP + 0x14],DL
NOP
LEA EBX,[ESI + ESI*0x4]
ADD EAX,0x1
MOV EDX,dword ptr [ESP + 0x4]
LEA ESI,[ECX + EBX*0x2 + -0x30]
MOV dword ptr [EBP],EAX
MOVSX ECX,byte ptr [EAX]
MOVZX EBX,CL
TEST byte ptr [EDX + EBX*0x2],0x4
JNZ 0x000374d0
MOVZX EDX,byte ptr [ESP + 0x14]
LEA ECX,[EAX + 0x1]
MOV dword ptr [EBP],ECX
CMP byte ptr [EAX],0x3a
JZ 0x00037a1f
MOV dword ptr [EBP],EDI
JMP 0x00037111
SUB ESP,0xc
MOV EAX,dword ptr [EBP]
XOR ECX,ECX
XOR EDX,EDX
PUSH 0x0
SUB EAX,0x1
CALL 0x0002f7d0
MOV ESI,dword ptr [ESP + 0x10]
ADD ESP,0x10
MOV ESI,dword ptr [ESI + 0x8a34]
CMP dword ptr [EBP],ESI
JBE 0x00037376
JMP 0x0003737c
MOV EBX,dword ptr [ESP]
CALL 0x00029290
JMP 0x0003732c
SUB ESP,0x8
ADD EAX,0x1
PUSH EAX
MOV EAX,dword ptr [ESP + 0xc]
PUSH dword ptr [EAX + 0x8a28]
MOV EBX,EAX
MOV dword ptr [ESP + 0x10],EAX
CALL 0x000283e0
ADD ESP,0x10
MOV EDI,EAX
TEST EAX,EAX
JZ 0x000378d0
MOV EBX,dword ptr [ESP]
MOV EAX,dword ptr [EAX + 0x4]
MOV EDX,dword ptr [EBX + 0x8a30]
TEST EAX,EAX
JZ 0x00037999
TEST EDX,EDX
JZ 0x00037605
MOV EBX,dword ptr [ESP]
LEA EDX,[EBX + 0xfffb4160]
CMP EAX,EDX
JZ 0x00037a10
LEA EDX,[EBX + 0xfffb4910]
CMP EAX,EDX
JZ 0x00037a10
MOV EBX,dword ptr [ESP]
CMP EAX,dword ptr [EBX + 0xffffff74]
SETNZ DL
CMP EAX,dword ptr [EBX + 0xfffffff4]
SETNZ CL
AND EDX,ECX
CMP EAX,dword ptr [EBX + 0xffffffd4]
SETNZ CL
AND EDX,ECX
CMP EAX,dword ptr [EBX + 0xffffffc4]
SETNZ CL
AND EDX,ECX
CMP EAX,dword ptr [EBX + 0xffffff94]
SETNZ CL
AND EDX,ECX
CMP EAX,dword ptr [EBX + 0xffffff5c]
SETNZ CL
AND EDX,ECX
LEA ECX,[EBX + 0xfffb5b60]
CMP EAX,ECX
SETNZ CL
TEST DL,CL
JZ 0x00037605
LEA EDX,[EBX + 0xfffb2a30]
CMP EAX,EDX
JNZ 0x00037bd2
MOV EAX,ESI
SUB ESP,0xc
MOVSX ESI,AL
PUSH ESI
MOV EBX,dword ptr [ESP + 0x10]
CALL 0x00027230
ADD ESP,0x10
CMP AL,0x20
JZ 0x000378c7
CMP AL,0x9
JZ 0x000378c7
SUB ESP,0xc
PUSH dword ptr [EDI + 0x8]
CALL dword ptr [EDI + 0x4]
MOV EAX,dword ptr [ESP + 0x10]
ADD ESP,0x10
LEA EAX,[EAX + 0xfffb00b0]
CMP dword ptr [EDI + 0x4],EAX
JNZ 0x00037452
SUB ESP,0xc
MOV ESI,dword ptr [ESP + 0xc]
PUSH dword ptr [ESI + 0xffffff6c]
MOV EBX,ESI
CALL 0x0003e1c0
CALL 0x00028fa0
LEA EAX,[ESI + 0x8d64]
ADD ESP,0x10
MOV ESI,dword ptr [EAX]
TEST ESI,ESI
JZ 0x0003767f
MOV EAX,dword ptr [ESP + 0x1c]
MOV EAX,dword ptr [EAX]
TEST EAX,EAX
JNZ 0x00037a5e
ADD ESP,0x3c
POP EBX
POP ESI
POP EDI
POP EBP
RET
CMP byte ptr [EAX + 0x1],0x3d
JNZ 0x0003746c
SUB ESP,0x8
PUSH -0x1
JMP 0x00037471
SUB ESP,0xc
PUSH EDI
MOV EDI,dword ptr [ESP + 0x10]
MOV EBX,EDI
CALL 0x0003d480
LEA EDX,[EDI + 0x8f48]
MOV dword ptr [EDX],EAX
MOV EAX,ESI
MOVSX ESI,AL
MOV dword ptr [ESP],ESI
CALL 0x00027230
MOV EAX,dword ptr [EBP]
ADD ESP,0x10
LEA EDI,[EAX + 0x1]
MOV dword ptr [EBP],EDI
CMP byte ptr [EAX + 0x1],0x20
JZ 0x00037985
MOV ESI,dword ptr [EBX + 0x8a34]
JMP 0x00037040
MOV EAX,ESI
MOV EDX,dword ptr [ESP + 0x20]
MOVSX EAX,AL
CALL 0x0002fa10
TEST EAX,EAX
JNZ 0x00037452
MOV EAX,dword ptr [ESP]
MOV ECX,dword ptr [EAX + 0x8a30]
TEST ECX,ECX
JZ 0x000372ca
PUSH 0x0
PUSH 0x0
PUSH 0x0
PUSH 0x1
CALL 0x000307b0
MOV EBX,dword ptr [ESP + 0x10]
ADD ESP,0x10
MOV dword ptr [EBX + 0x8a30],0x0
LEA EDI,[EBX + 0x8f48]
MOV EAX,dword ptr [EDI]
TEST EAX,EAX
JZ 0x000372ca
LEA EDX,[EBX + 0x8e84]
SUB ESP,0x8
PUSH dword ptr [EDX]
PUSH EAX
MOV dword ptr [ESP + 0x10],EBX
CALL 0x0003e160
MOV EBX,dword ptr [ESP + 0x10]
CALL 0x00027cf0
ADD ESP,0xc
PUSH EDX
PUSH EAX
PUSH dword ptr [EDI]
MOV EBX,dword ptr [ESP + 0x10]
CALL 0x0003ae10
ADD ESP,0x10
JMP 0x000372ca
MOV EDI,dword ptr [ESP]
MOV EBX,EDI
CALL 0x00029290
MOV EAX,dword ptr [ESP + 0x20]
SUB ESP,0x8
LEA ESI,[EAX + 0x4]
LEA EAX,[EDI + 0xfffde3f6]
MOV dword ptr [ESP + 0x28],ESI
MOV dword ptr [ESP + 0x14],EAX
PUSH EAX
PUSH ESI
CALL 0x00017070
ADD ESP,0x10
MOV EDI,EAX
TEST EAX,EAX
JZ 0x00037a85
LEA EAX,[EAX + 0x8]
MOV dword ptr [ESP + 0x18],0x0
MOV dword ptr [EBP],EAX
MOV EAX,dword ptr [ESP]
SUB ESP,0xc
MOV dword ptr [EAX + 0x8a18],EDI
SUB EDI,ESI
MOV EBX,EAX
PUSH EDI
MOV dword ptr [EAX + 0x8a1c],ESI
MOV ESI,EAX
CALL 0x00017780
ADD ESP,0x10
MOV EDX,EAX
MOV ECX,EAX
LEA EAX,[ESI + 0xfffaf780]
MOV dword ptr [ESP + 0x14],EAX
JMP 0x000377fb
SUB ESP,0x8
LEA ESI,[EDI + 0x64]
PUSH ESI
PUSH EDX
MOV EBX,dword ptr [ESP + 0x10]
CALL 0x00017200
ADD ESP,0x10
LEA ECX,[EAX + EDI*0x1]
MOV EDX,EAX
MOV EDI,ESI
LEA ESI,[EDX + EDI*0x1]
MOV dword ptr [ESP + 0xc],EDX
SUB ESP,0x4
SUB ESI,ECX
PUSH ESI
PUSH ECX
MOV dword ptr [ESP + 0x10],ECX
PUSH dword ptr [ESP + 0x20]
MOV EBX,dword ptr [ESP + 0x10]
CALL 0x00019430
ADD ESP,0x10
MOV ECX,dword ptr [ESP + 0x4]
MOV EDX,dword ptr [ESP + 0xc]
CMP ESI,EAX
JBE 0x000377e0
MOV EDI,dword ptr [ESP + 0x18]
MOV byte ptr [ECX + EAX*0x1],0x0
TEST EDI,EDI
JZ 0x00037850
MOV dword ptr [ESP + 0x4],EDX
SUB ESP,0xc
PUSH dword ptr [ESP + 0x24]
MOV EBX,dword ptr [ESP + 0x10]
CALL 0x00017770
ADD ESP,0x10
MOV EDX,dword ptr [ESP + 0x4]
SUB ESP,0xc
PUSH EDX
MOV EBX,dword ptr [ESP + 0x10]
MOV dword ptr [ESP + 0x14],EDX
CALL 0x00017420
POP EBX
POP ESI
PUSH EAX
MOV EDI,EAX
LEA ESI,[ESP + 0x30]
PUSH ESI
MOV EBX,dword ptr [ESP + 0x10]
CALL 0x00038130
ADD ESP,0xc
PUSH EDI
MOV EDX,dword ptr [ESP + 0xc]
PUSH EDX
MOV dword ptr [ESP + 0x10],EDX
PUSH ESI
MOV EDI,dword ptr [ESP + 0x10]
MOV EBX,EDI
CALL 0x00038310
ADD ESP,0xc
PUSH 0x0
PUSH dword ptr [EBP]
PUSH ESI
CALL 0x00028ea0
MOV dword ptr [ESP],ESI
CALL 0x000381b0
MOV dword ptr [ESP],EBP
CALL 0x00028fd0
MOV EDX,dword ptr [ESP + 0x14]
MOV ESI,EAX
MOV dword ptr [EBX + 0x8a34],EAX
MOV dword ptr [ESP],EDX
CALL 0x00017770
ADD ESP,0x10
JMP 0x00037168
ADD dword ptr [EBP],0x1
JMP 0x0003762a
MOV EAX,dword ptr [ESP]
MOV ECX,dword ptr [EAX + 0x8a30]
TEST ECX,ECX
JNZ 0x000379a1
MOV EAX,ESI
SUB ESP,0xc
MOV EDI,dword ptr [EBP]
MOVSX ESI,AL
PUSH ESI
MOV EBX,dword ptr [ESP + 0x10]
CALL 0x00027230
CALL 0x00030fc0
MOV EAX,dword ptr [EBP]
ADD ESP,0x10
LEA EDX,[EAX + -0x1]
MOV dword ptr [EBP],EDX
MOVZX ESI,byte ptr [EAX + -0x1]
MOV byte ptr [EAX + -0x1],0x0
MOV EAX,dword ptr [ESP]
LEA EAX,[EAX + 0x8f1c]
MOV EBX,dword ptr [EAX]
TEST EBX,EBX
JZ 0x00037934
MOV EAX,ESI
MOV EDX,dword ptr [ESP + 0x20]
MOVSX EAX,AL
CALL 0x0002fa10
TEST EAX,EAX
JNZ 0x00037452
SUB ESP,0x4
MOV byte ptr [EDI],0x0
MOV EDI,dword ptr [ESP + 0x24]
PUSH 0x5
MOV EBX,dword ptr [ESP + 0x8]
LEA EAX,[EBX + 0xfffde3de]
PUSH EAX
PUSH 0x0
MOV dword ptr [ESP + 0x10],EBX
CALL 0x000171a0
POP EDX
POP ECX
PUSH EDI
PUSH EAX
MOV EBX,dword ptr [ESP + 0x10]
CALL 0x0002ec90
MOV EAX,dword ptr [EBP]
MOV EBX,ESI
LEA EDX,[EAX + 0x1]
MOV dword ptr [EBP],EDX
MOV byte ptr [EAX],BL
MOV EBX,dword ptr [ESP + 0x10]
ADD ESP,0x10
MOV EDI,dword ptr [EBP]
MOV ESI,dword ptr [EBX + 0x8a34]
JMP 0x00037040
LEA EDI,[EAX + 0x2]
MOV EAX,dword ptr [ESP]
MOV dword ptr [EBP],EDI
MOV ESI,dword ptr [EAX + 0x8a34]
JMP 0x00037040
TEST EDX,EDX
JZ 0x000378e1
PUSH 0x0
PUSH 0x0
PUSH 0x0
PUSH 0x1
CALL 0x000307b0
MOV EAX,dword ptr [ESP + 0x10]
ADD ESP,0x10
MOV dword ptr [EAX + 0x8a30],0x0
LEA EDI,[EAX + 0x8f48]
MOV EAX,dword ptr [EDI]
TEST EAX,EAX
JZ 0x000378e1
SUB ESP,0x8
MOV EBX,dword ptr [ESP + 0x8]
LEA EDX,[EBX + 0x8e84]
PUSH dword ptr [EDX]
PUSH EAX
MOV dword ptr [ESP + 0x10],EBX
CALL 0x0003e160
MOV EBX,dword ptr [ESP + 0x10]
CALL 0x00027cf0
ADD ESP,0xc
PUSH EDX
PUSH EAX
PUSH dword ptr [EDI]
MOV EBX,dword ptr [ESP + 0x10]
CALL 0x0003ae10
ADD ESP,0x10
JMP 0x000378e1
CMP dword ptr [EDI + 0x8],0x1
JNZ 0x000375a5
JMP 0x00037605
SUB ESP,0xc
PUSH ESI
MOV EDI,dword ptr [ESP + 0x10]
MOV EBX,EDI
CALL 0x0003a8d0
POP EAX
POP EDX
PUSH 0x0
PUSH ESI
CALL 0x0003aa40
MOV dword ptr [ESP],EAX
CALL 0x0003d480
MOV EDI,dword ptr [EBP]
MOV ESI,dword ptr [EBX + 0x8a34]
ADD ESP,0x10
JMP 0x00037040
MOV EBX,dword ptr [ESP]
CALL 0x00038cd0
JMP 0x00036fe7
SUB ESP,0x4
MOV EBX,dword ptr [ESP + 0x4]
LEA EDX,[EBX + 0xfffde3ff]
PUSH EDX
PUSH EAX
LEA EAX,[EBX + 0x8d6c]
PUSH dword ptr [EAX]
CALL 0x0002ec20
ADD ESP,0x10
ADD ESP,0x3c
POP EBX
POP ESI
POP EDI
POP EBP
RET
MOV EDI,dword ptr [ESP]
SUB ESP,0xc
MOV EAX,dword ptr [EDI + 0x8a34]
MOV EBX,EDI
SUB EAX,ESI
MOV ESI,EAX
LEA EAX,[EAX + 0x1]
PUSH EAX
CALL 0x00017780
MOV dword ptr [ESP + 0x28],EAX
ADD ESP,0xc
PUSH ESI
PUSH dword ptr [ESP + 0x28]
PUSH EAX
CALL 0x000170f0
ADD ESP,0x10
LEA EAX,[EDI + 0x8a38]
MOV dword ptr [ESP + 0x4],EAX
SUB ESP,0xc
PUSH dword ptr [ESP + 0x10]
MOV EDI,dword ptr [ESP + 0x10]
MOV EBX,EDI
CALL 0x00028fd0
ADD ESP,0x10
MOV EDX,EAX
TEST EAX,EAX
JZ 0x00037bad
MOV dword ptr [EDI + 0x8a34],EDX
MOV EDI,dword ptr [EDI + 0x8a38]
SUB ESP,0x8
MOV dword ptr [ESP + 0x1c],EDX
PUSH dword ptr [ESP + 0x14]
PUSH EDI
MOV dword ptr [EBP],EDI
MOV dword ptr [ESP + 0x10],EBX
CALL 0x00017070
ADD ESP,0x10
MOV EDX,dword ptr [ESP + 0x14]
TEST EAX,EAX
JZ 0x00037b69
MOV EDX,EAX
MOV dword ptr [ESP + 0xc],EAX
SUB ESP,0x8
SUB EDX,EDI
MOV dword ptr [ESP + 0xc],EDX
LEA EDI,[ESI + EDX*0x1]
PUSH EDI
PUSH dword ptr [ESP + 0x24]
MOV EBX,dword ptr [ESP + 0x10]
CALL 0x00017200
MOV dword ptr [ESP + 0x28],EAX
ADD ESP,0xc
MOV EDX,dword ptr [ESP + 0x8]
ADD ESI,EAX
PUSH EDX
MOV EAX,dword ptr [ESP + 0x8]
PUSH dword ptr [EAX + 0x8a38]
MOV EBX,EAX
PUSH ESI
CALL 0x000170f0
MOV ECX,dword ptr [ESP + 0x1c]
ADD ESP,0x10
LEA EDX,[ECX + 0x8]
MOV ESI,dword ptr [ESP + 0x18]
MOV dword ptr [EBP],EDX
MOV dword ptr [ESP + 0x20],ESI
ADD EDI,ESI
JMP 0x000377af
SUB EDX,EDI
SUB ESP,0x8
MOV dword ptr [ESP + 0x1c],EDX
LEA EDI,[ESI + EDX*0x1]
PUSH EDI
PUSH dword ptr [ESP + 0x24]
MOV EBX,dword ptr [ESP + 0x10]
CALL 0x00017200
MOV dword ptr [ESP + 0x28],EAX
ADD ESP,0xc
MOV EDX,dword ptr [ESP + 0x18]
ADD ESI,EAX
PUSH EDX
MOV EAX,dword ptr [ESP + 0x8]
PUSH dword ptr [EAX + 0x8a38]
MOV EBX,EAX
PUSH ESI
MOV ESI,EDI
CALL 0x000170f0
ADD ESP,0x10
JMP 0x00037abf
MOV EDI,ESI
JMP 0x00037b57
SUB ESP,0x4
PUSH 0x5
MOV ESI,dword ptr [ESP + 0x8]
LEA EAX,[ESI + 0xfffddffc]
MOV EBX,ESI
PUSH EAX
PUSH 0x0
CALL 0x000171a0
MOV dword ptr [ESP],EAX
CALL 0x0002ed30
PUSH 0x0
PUSH 0x0
PUSH 0x0
PUSH 0x1
CALL 0x000307b0
MOV EAX,dword ptr [ESP + 0x10]
ADD ESP,0x10
MOV dword ptr [EAX + 0x8a30],0x0
LEA ECX,[EAX + 0x8f48]
MOV EAX,dword ptr [ECX]
TEST EAX,EAX
JZ 0x00037605
MOV dword ptr [ESP + 0x4],ECX
PUSH EDX
PUSH EDX
MOV EBX,dword ptr [ESP + 0x8]
LEA EDX,[EBX + 0x8e84]
PUSH dword ptr [EDX]
PUSH EAX
MOV dword ptr [ESP + 0x10],EBX
CALL 0x0003e160
MOV EBX,dword ptr [ESP + 0x10]
CALL 0x00027cf0
ADD ESP,0xc
PUSH EDX
PUSH EAX
MOV ECX,dword ptr [ESP + 0x10]
PUSH dword ptr [ECX]
MOV EBX,dword ptr [ESP + 0x10]
CALL 0x0003ae10
ADD ESP,0x10
JMP 0x00037605
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.ax replaced with injection: get_pc_thunk_ax */\n/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */\n\nvoid FUN_00036f80(undefined4 param_1)\n\n{\n  byte bVar1;\n  code *pcVar2;\n  undefined *puVar3;\n  byte bVar4;\n  char cVar5;\n  byte *pbVar6;\n  char *pcVar7;\n  size_t sVar8;\n  void *__s;\n  byte *pbVar9;\n  char *__s_00;\n  char *pcVar10;\n  size_t sVar11;\n  undefined4 uVar12;\n  int iVar13;\n  byte bVar14;\n  uint uVar15;\n  size_t sVar16;\n  undefined4 extraout_EDX;\n  bool bVar17;\n  bool bVar18;\n  byte bVar19;\n  undefined8 uVar20;\n  byte *local_34;\n  byte *local_2c;\n  undefined1 local_28 [24];\n  \n  bVar19 = 0;\n  DAT_00088e0c = 0;\n  DAT_00088a38 = (byte *)FUN_00028de0(param_1);\n  FUN_0002b740(param_1);\n  FUN_0002a220(0);\n  FUN_0001ccd0(param_1);\n  if (DAT_000886b8 == 2) {\n    FUN_00038cd0();\n  }\nLAB_00036ffa:\n  do {\n    DAT_00088a34 = (byte *)FUN_00028fd0(&DAT_00088f58);\n    if (DAT_00088a34 == (byte *)0x0) {\nLAB_00037649:\n      FUN_0003e1c0(PTR_DAT_0007ff6c);\n      FUN_00028fa0();\n      if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }\n      return;\n    }\n    DAT_00088a0c = (byte *)0x0;\n    pbVar6 = DAT_00088f58;\nLAB_00037040:\n    DAT_00088f58 = pbVar6;\n  } while (DAT_00088a34 <= DAT_00088f58);\nLAB_00037044:\n  cVar5 = (&DAT_000802c0)[DAT_00088f58[-1]];\n  if (cVar5 == '\0') {\n    if (_DAT_00088e00 != 0) {\nLAB_00037065:\n      if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {\n        FUN_0002a220(0);\n      }\n      else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }\n      if (cVar5 != '\0') goto LAB_00037094;\n    }\n  }\n  else {\n    FUN_0003e1c0(PTR_DAT_0007ff6c);\n    if (DAT_00088f58[-1] == 10) {\n      FUN_00029290();\n    }\n    if (_DAT_00088e00 != 0) goto LAB_00037065;\nLAB_00037094:\n    DAT_00088f48 = 0;\n  }\n  do {\n    puVar3 = PTR__sch_istable_0007ff84;\n    pbVar6 = DAT_00088f58 + 1;\n    bVar14 = *DAT_00088f58;\n    uVar15 = (uint)bVar14;\n    DAT_00088f58 = pbVar6;\n    if (0x17 < (byte)(uVar15 - 9)) {\n      bVar4 = (&DAT_000803c0)[uVar15];\n      goto joined_r0x000370d3;\n    }\n  } while ((0x800009U >> (uVar15 - 9 & 0x1f) & 1) != 0);\n  bVar4 = (&DAT_000803c0)[uVar15];\njoined_r0x000370d3:\n  if (((bVar4 & 2) == 0) && (bVar14 != 0x22)) {\n    if ((&DAT_000802c0)[uVar15] != '\0') goto LAB_00037040;\n    if ((PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0) {\n      iVar13 = FUN_0001c860();\n      if (iVar13 != 0) goto LAB_00037509;\n      iVar13 = (char)bVar14 + -0x30;\n      bVar4 = *DAT_00088f58;\n      bVar1 = puVar3[(uint)bVar4 * 2];\n      pbVar9 = DAT_00088f58;\n      while ((bVar1 & 4) != 0) {\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }\n      DAT_00088f58 = pbVar9 + 1;\n      if (*pbVar9 == 0x3a) {\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }\n    }\n    DAT_00088f58 = pbVar6;\n    if (bVar14 == 0) goto LAB_00037439;\n    pcVar7 = strchr(PTR_DAT_0007ffa0,(int)(char)bVar14);\n    bVar17 = false;\n    bVar18 = pcVar7 == (char *)0x0;\n    if (bVar18) goto LAB_00037439;\n    local_2c = DAT_00088f58;\n    iVar13 = 4;\n    pbVar6 = DAT_00088f58;\n    pbVar9 = &DAT_0005e3fa;\n    do {\n      if (iVar13 == 0) break;\n      iVar13 = iVar13 + -1;\n      bVar17 = *pbVar6 < *pbVar9;\n      bVar18 = *pbVar6 == *pbVar9;\n      pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;\n      pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;\n    } while (bVar18);\n    if ((!bVar17 && !bVar18) == bVar17) {\n      FUN_00029290();\n      pbVar6 = local_2c + 4;\n      local_2c = pbVar6;\n      pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");\n      if (pbVar9 == (byte *)0x0) {\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }\n      else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }\n      iVar13 = (int)pbVar9 - (int)DAT_00088a1c;\n      DAT_00088a18 = pbVar9;\n      pcVar7 = (char *)xmalloc(iVar13);\n      __s_00 = pcVar7;\n      while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }\n      pcVar7[(int)pcVar10] = '\0';\n      if (local_34 != (byte *)0x0) {\n        free(local_34);\n      }\n      sVar11 = strlen(__s_00);\n      FUN_00038130(local_28,sVar11);\n      FUN_00038310(local_28,__s_00,sVar11);\n      FUN_00028ea0(local_28,DAT_00088f58,0);\n      FUN_000381b0(local_28);\n      pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);\n      DAT_00088a34 = pbVar6;\n      free(__s_00);\n    }\n    else {\n      FUN_00030fc0();\n      pbVar6 = DAT_00088a34;\n    }\n    if (pbVar6 <= DAT_00088f58) goto LAB_00036ffa;\n    goto LAB_00037044;\n  }\n  iVar13 = FUN_0001c860();\n  if (iVar13 != 0) {\n    pbVar9 = (byte *)FUN_0002f7d0(0);\n    if (DAT_00088f58 <= DAT_00088a34) goto LAB_00037376;\n    goto LAB_0003737c;\n  }\n  DAT_00088f58 = DAT_00088f58 + -1;\n  bVar4 = FUN_00025220(&local_2c);\n  pbVar6 = local_2c;\n  iVar13 = 1;\n  bVar14 = bVar4;\n  if (bVar4 == 0x22) {\n    bVar14 = DAT_00088f58[1];\n    iVar13 = 2;\n  }\n  pbVar9 = DAT_00088f58 + iVar13;\n  if (bVar14 == 0x3a) {\n    DAT_00088f48 = FUN_0003d480(local_2c);\n    FUN_00027230((int)(char)bVar4);\n    pbVar6 = DAT_00088f58 + 1;\n    if (DAT_00088f58[1] == 0x20) {\n      pbVar6 = DAT_00088f58 + 2;\n    }\n    goto LAB_00037040;\n  }\n  if (bVar14 == 0x3d) {\n    if (*pbVar9 == 0x3d) goto LAB_00037691;\nLAB_0003746c:\n    uVar12 = 1;\n  }\n  else {\n    if (((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d)) {\n      strncpy(&DAT_00088f60,(char *)local_2c,0x80);\n      puVar3 = PTR__sch_tolower_0007ffcc;\n      DAT_00088fdf = 0;\n      bVar14 = *pbVar6;\n      if (bVar14 == 0) goto LAB_0003726e;\n      do {\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      } while (bVar14 != 0);\n      if (*local_2c == 0x2e) {\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }\n      goto LAB_00037040;\n    }\n    if (pbVar9[1] != 0x3d) goto LAB_0003746c;\nLAB_00037691:\n    uVar12 = 0xffffffff;\n  }\n  FUN_00036d70(local_2c,uVar12);\n  FUN_00031210();\n  pbVar6 = DAT_00088f58;\n  goto LAB_00037040;\nLAB_00037439:\n  iVar13 = FUN_0001c860();\n  if (iVar13 == 0) {\n    DAT_00088f58 = DAT_00088f58 + -1;\n    FUN_00031210();\n    pbVar6 = DAT_00088f58;\n    goto LAB_00037040;\n  }\nLAB_00037509:\n  pbVar9 = (byte *)FUN_0002f7d0(0);\n  if (DAT_00088f58 <= DAT_00088a34) {\nLAB_00037376:\n    pbVar6 = DAT_00088a34;\n    if (DAT_00088a34 <= pbVar9) goto LAB_00037040;\n  }\nLAB_0003737c:\n  pbVar6 = pbVar9 + 1;\n  goto LAB_00037040;\n}\n\n" comment comment (function_definition "void FUN_00036f80(undefined4 param_1)\n\n{\n  byte bVar1;\n  code *pcVar2;\n  undefined *puVar3;\n  byte bVar4;\n  char cVar5;\n  byte *pbVar6;\n  char *pcVar7;\n  size_t sVar8;\n  void *__s;\n  byte *pbVar9;\n  char *__s_00;\n  char *pcVar10;\n  size_t sVar11;\n  undefined4 uVar12;\n  int iVar13;\n  byte bVar14;\n  uint uVar15;\n  size_t sVar16;\n  undefined4 extraout_EDX;\n  bool bVar17;\n  bool bVar18;\n  byte bVar19;\n  undefined8 uVar20;\n  byte *local_34;\n  byte *local_2c;\n  undefined1 local_28 [24];\n  \n  bVar19 = 0;\n  DAT_00088e0c = 0;\n  DAT_00088a38 = (byte *)FUN_00028de0(param_1);\n  FUN_0002b740(param_1);\n  FUN_0002a220(0);\n  FUN_0001ccd0(param_1);\n  if (DAT_000886b8 == 2) {\n    FUN_00038cd0();\n  }\nLAB_00036ffa:\n  do {\n    DAT_00088a34 = (byte *)FUN_00028fd0(&DAT_00088f58);\n    if (DAT_00088a34 == (byte *)0x0) {\nLAB_00037649:\n      FUN_0003e1c0(PTR_DAT_0007ff6c);\n      FUN_00028fa0();\n      if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }\n      return;\n    }\n    DAT_00088a0c = (byte *)0x0;\n    pbVar6 = DAT_00088f58;\nLAB_00037040:\n    DAT_00088f58 = pbVar6;\n  } while (DAT_00088a34 <= DAT_00088f58);\nLAB_00037044:\n  cVar5 = (&DAT_000802c0)[DAT_00088f58[-1]];\n  if (cVar5 == '\0') {\n    if (_DAT_00088e00 != 0) {\nLAB_00037065:\n      if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {\n        FUN_0002a220(0);\n      }\n      else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }\n      if (cVar5 != '\0') goto LAB_00037094;\n    }\n  }\n  else {\n    FUN_0003e1c0(PTR_DAT_0007ff6c);\n    if (DAT_00088f58[-1] == 10) {\n      FUN_00029290();\n    }\n    if (_DAT_00088e00 != 0) goto LAB_00037065;\nLAB_00037094:\n    DAT_00088f48 = 0;\n  }\n  do {\n    puVar3 = PTR__sch_istable_0007ff84;\n    pbVar6 = DAT_00088f58 + 1;\n    bVar14 = *DAT_00088f58;\n    uVar15 = (uint)bVar14;\n    DAT_00088f58 = pbVar6;\n    if (0x17 < (byte)(uVar15 - 9)) {\n      bVar4 = (&DAT_000803c0)[uVar15];\n      goto joined_r0x000370d3;\n    }\n  } while ((0x800009U >> (uVar15 - 9 & 0x1f) & 1) != 0);\n  bVar4 = (&DAT_000803c0)[uVar15];\njoined_r0x000370d3:\n  if (((bVar4 & 2) == 0) && (bVar14 != 0x22)) {\n    if ((&DAT_000802c0)[uVar15] != '\0') goto LAB_00037040;\n    if ((PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0) {\n      iVar13 = FUN_0001c860();\n      if (iVar13 != 0) goto LAB_00037509;\n      iVar13 = (char)bVar14 + -0x30;\n      bVar4 = *DAT_00088f58;\n      bVar1 = puVar3[(uint)bVar4 * 2];\n      pbVar9 = DAT_00088f58;\n      while ((bVar1 & 4) != 0) {\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }\n      DAT_00088f58 = pbVar9 + 1;\n      if (*pbVar9 == 0x3a) {\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }\n    }\n    DAT_00088f58 = pbVar6;\n    if (bVar14 == 0) goto LAB_00037439;\n    pcVar7 = strchr(PTR_DAT_0007ffa0,(int)(char)bVar14);\n    bVar17 = false;\n    bVar18 = pcVar7 == (char *)0x0;\n    if (bVar18) goto LAB_00037439;\n    local_2c = DAT_00088f58;\n    iVar13 = 4;\n    pbVar6 = DAT_00088f58;\n    pbVar9 = &DAT_0005e3fa;\n    do {\n      if (iVar13 == 0) break;\n      iVar13 = iVar13 + -1;\n      bVar17 = *pbVar6 < *pbVar9;\n      bVar18 = *pbVar6 == *pbVar9;\n      pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;\n      pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;\n    } while (bVar18);\n    if ((!bVar17 && !bVar18) == bVar17) {\n      FUN_00029290();\n      pbVar6 = local_2c + 4;\n      local_2c = pbVar6;\n      pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");\n      if (pbVar9 == (byte *)0x0) {\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }\n      else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }\n      iVar13 = (int)pbVar9 - (int)DAT_00088a1c;\n      DAT_00088a18 = pbVar9;\n      pcVar7 = (char *)xmalloc(iVar13);\n      __s_00 = pcVar7;\n      while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }\n      pcVar7[(int)pcVar10] = '\0';\n      if (local_34 != (byte *)0x0) {\n        free(local_34);\n      }\n      sVar11 = strlen(__s_00);\n      FUN_00038130(local_28,sVar11);\n      FUN_00038310(local_28,__s_00,sVar11);\n      FUN_00028ea0(local_28,DAT_00088f58,0);\n      FUN_000381b0(local_28);\n      pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);\n      DAT_00088a34 = pbVar6;\n      free(__s_00);\n    }\n    else {\n      FUN_00030fc0();\n      pbVar6 = DAT_00088a34;\n    }\n    if (pbVar6 <= DAT_00088f58) goto LAB_00036ffa;\n    goto LAB_00037044;\n  }\n  iVar13 = FUN_0001c860();\n  if (iVar13 != 0) {\n    pbVar9 = (byte *)FUN_0002f7d0(0);\n    if (DAT_00088f58 <= DAT_00088a34) goto LAB_00037376;\n    goto LAB_0003737c;\n  }\n  DAT_00088f58 = DAT_00088f58 + -1;\n  bVar4 = FUN_00025220(&local_2c);\n  pbVar6 = local_2c;\n  iVar13 = 1;\n  bVar14 = bVar4;\n  if (bVar4 == 0x22) {\n    bVar14 = DAT_00088f58[1];\n    iVar13 = 2;\n  }\n  pbVar9 = DAT_00088f58 + iVar13;\n  if (bVar14 == 0x3a) {\n    DAT_00088f48 = FUN_0003d480(local_2c);\n    FUN_00027230((int)(char)bVar4);\n    pbVar6 = DAT_00088f58 + 1;\n    if (DAT_00088f58[1] == 0x20) {\n      pbVar6 = DAT_00088f58 + 2;\n    }\n    goto LAB_00037040;\n  }\n  if (bVar14 == 0x3d) {\n    if (*pbVar9 == 0x3d) goto LAB_00037691;\nLAB_0003746c:\n    uVar12 = 1;\n  }\n  else {\n    if (((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d)) {\n      strncpy(&DAT_00088f60,(char *)local_2c,0x80);\n      puVar3 = PTR__sch_tolower_0007ffcc;\n      DAT_00088fdf = 0;\n      bVar14 = *pbVar6;\n      if (bVar14 == 0) goto LAB_0003726e;\n      do {\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      } while (bVar14 != 0);\n      if (*local_2c == 0x2e) {\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }\n      goto LAB_00037040;\n    }\n    if (pbVar9[1] != 0x3d) goto LAB_0003746c;\nLAB_00037691:\n    uVar12 = 0xffffffff;\n  }\n  FUN_00036d70(local_2c,uVar12);\n  FUN_00031210();\n  pbVar6 = DAT_00088f58;\n  goto LAB_00037040;\nLAB_00037439:\n  iVar13 = FUN_0001c860();\n  if (iVar13 == 0) {\n    DAT_00088f58 = DAT_00088f58 + -1;\n    FUN_00031210();\n    pbVar6 = DAT_00088f58;\n    goto LAB_00037040;\n  }\nLAB_00037509:\n  pbVar9 = (byte *)FUN_0002f7d0(0);\n  if (DAT_00088f58 <= DAT_00088a34) {\nLAB_00037376:\n    pbVar6 = DAT_00088a34;\n    if (DAT_00088a34 <= pbVar9) goto LAB_00037040;\n  }\nLAB_0003737c:\n  pbVar6 = pbVar9 + 1;\n  goto LAB_00037040;\n}" primitive_type (function_declarator "FUN_00036f80(undefined4 param_1)" identifier (parameter_list "(undefined4 param_1)" ( (parameter_declaration "undefined4 param_1" type_identifier identifier) ))) (compound_statement "{\n  byte bVar1;\n  code *pcVar2;\n  undefined *puVar3;\n  byte bVar4;\n  char cVar5;\n  byte *pbVar6;\n  char *pcVar7;\n  size_t sVar8;\n  void *__s;\n  byte *pbVar9;\n  char *__s_00;\n  char *pcVar10;\n  size_t sVar11;\n  undefined4 uVar12;\n  int iVar13;\n  byte bVar14;\n  uint uVar15;\n  size_t sVar16;\n  undefined4 extraout_EDX;\n  bool bVar17;\n  bool bVar18;\n  byte bVar19;\n  undefined8 uVar20;\n  byte *local_34;\n  byte *local_2c;\n  undefined1 local_28 [24];\n  \n  bVar19 = 0;\n  DAT_00088e0c = 0;\n  DAT_00088a38 = (byte *)FUN_00028de0(param_1);\n  FUN_0002b740(param_1);\n  FUN_0002a220(0);\n  FUN_0001ccd0(param_1);\n  if (DAT_000886b8 == 2) {\n    FUN_00038cd0();\n  }\nLAB_00036ffa:\n  do {\n    DAT_00088a34 = (byte *)FUN_00028fd0(&DAT_00088f58);\n    if (DAT_00088a34 == (byte *)0x0) {\nLAB_00037649:\n      FUN_0003e1c0(PTR_DAT_0007ff6c);\n      FUN_00028fa0();\n      if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }\n      return;\n    }\n    DAT_00088a0c = (byte *)0x0;\n    pbVar6 = DAT_00088f58;\nLAB_00037040:\n    DAT_00088f58 = pbVar6;\n  } while (DAT_00088a34 <= DAT_00088f58);\nLAB_00037044:\n  cVar5 = (&DAT_000802c0)[DAT_00088f58[-1]];\n  if (cVar5 == '\0') {\n    if (_DAT_00088e00 != 0) {\nLAB_00037065:\n      if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {\n        FUN_0002a220(0);\n      }\n      else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }\n      if (cVar5 != '\0') goto LAB_00037094;\n    }\n  }\n  else {\n    FUN_0003e1c0(PTR_DAT_0007ff6c);\n    if (DAT_00088f58[-1] == 10) {\n      FUN_00029290();\n    }\n    if (_DAT_00088e00 != 0) goto LAB_00037065;\nLAB_00037094:\n    DAT_00088f48 = 0;\n  }\n  do {\n    puVar3 = PTR__sch_istable_0007ff84;\n    pbVar6 = DAT_00088f58 + 1;\n    bVar14 = *DAT_00088f58;\n    uVar15 = (uint)bVar14;\n    DAT_00088f58 = pbVar6;\n    if (0x17 < (byte)(uVar15 - 9)) {\n      bVar4 = (&DAT_000803c0)[uVar15];\n      goto joined_r0x000370d3;\n    }\n  } while ((0x800009U >> (uVar15 - 9 & 0x1f) & 1) != 0);\n  bVar4 = (&DAT_000803c0)[uVar15];\njoined_r0x000370d3:\n  if (((bVar4 & 2) == 0) && (bVar14 != 0x22)) {\n    if ((&DAT_000802c0)[uVar15] != '\0') goto LAB_00037040;\n    if ((PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0) {\n      iVar13 = FUN_0001c860();\n      if (iVar13 != 0) goto LAB_00037509;\n      iVar13 = (char)bVar14 + -0x30;\n      bVar4 = *DAT_00088f58;\n      bVar1 = puVar3[(uint)bVar4 * 2];\n      pbVar9 = DAT_00088f58;\n      while ((bVar1 & 4) != 0) {\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }\n      DAT_00088f58 = pbVar9 + 1;\n      if (*pbVar9 == 0x3a) {\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }\n    }\n    DAT_00088f58 = pbVar6;\n    if (bVar14 == 0) goto LAB_00037439;\n    pcVar7 = strchr(PTR_DAT_0007ffa0,(int)(char)bVar14);\n    bVar17 = false;\n    bVar18 = pcVar7 == (char *)0x0;\n    if (bVar18) goto LAB_00037439;\n    local_2c = DAT_00088f58;\n    iVar13 = 4;\n    pbVar6 = DAT_00088f58;\n    pbVar9 = &DAT_0005e3fa;\n    do {\n      if (iVar13 == 0) break;\n      iVar13 = iVar13 + -1;\n      bVar17 = *pbVar6 < *pbVar9;\n      bVar18 = *pbVar6 == *pbVar9;\n      pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;\n      pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;\n    } while (bVar18);\n    if ((!bVar17 && !bVar18) == bVar17) {\n      FUN_00029290();\n      pbVar6 = local_2c + 4;\n      local_2c = pbVar6;\n      pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");\n      if (pbVar9 == (byte *)0x0) {\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }\n      else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }\n      iVar13 = (int)pbVar9 - (int)DAT_00088a1c;\n      DAT_00088a18 = pbVar9;\n      pcVar7 = (char *)xmalloc(iVar13);\n      __s_00 = pcVar7;\n      while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }\n      pcVar7[(int)pcVar10] = '\0';\n      if (local_34 != (byte *)0x0) {\n        free(local_34);\n      }\n      sVar11 = strlen(__s_00);\n      FUN_00038130(local_28,sVar11);\n      FUN_00038310(local_28,__s_00,sVar11);\n      FUN_00028ea0(local_28,DAT_00088f58,0);\n      FUN_000381b0(local_28);\n      pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);\n      DAT_00088a34 = pbVar6;\n      free(__s_00);\n    }\n    else {\n      FUN_00030fc0();\n      pbVar6 = DAT_00088a34;\n    }\n    if (pbVar6 <= DAT_00088f58) goto LAB_00036ffa;\n    goto LAB_00037044;\n  }\n  iVar13 = FUN_0001c860();\n  if (iVar13 != 0) {\n    pbVar9 = (byte *)FUN_0002f7d0(0);\n    if (DAT_00088f58 <= DAT_00088a34) goto LAB_00037376;\n    goto LAB_0003737c;\n  }\n  DAT_00088f58 = DAT_00088f58 + -1;\n  bVar4 = FUN_00025220(&local_2c);\n  pbVar6 = local_2c;\n  iVar13 = 1;\n  bVar14 = bVar4;\n  if (bVar4 == 0x22) {\n    bVar14 = DAT_00088f58[1];\n    iVar13 = 2;\n  }\n  pbVar9 = DAT_00088f58 + iVar13;\n  if (bVar14 == 0x3a) {\n    DAT_00088f48 = FUN_0003d480(local_2c);\n    FUN_00027230((int)(char)bVar4);\n    pbVar6 = DAT_00088f58 + 1;\n    if (DAT_00088f58[1] == 0x20) {\n      pbVar6 = DAT_00088f58 + 2;\n    }\n    goto LAB_00037040;\n  }\n  if (bVar14 == 0x3d) {\n    if (*pbVar9 == 0x3d) goto LAB_00037691;\nLAB_0003746c:\n    uVar12 = 1;\n  }\n  else {\n    if (((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d)) {\n      strncpy(&DAT_00088f60,(char *)local_2c,0x80);\n      puVar3 = PTR__sch_tolower_0007ffcc;\n      DAT_00088fdf = 0;\n      bVar14 = *pbVar6;\n      if (bVar14 == 0) goto LAB_0003726e;\n      do {\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      } while (bVar14 != 0);\n      if (*local_2c == 0x2e) {\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }\n      goto LAB_00037040;\n    }\n    if (pbVar9[1] != 0x3d) goto LAB_0003746c;\nLAB_00037691:\n    uVar12 = 0xffffffff;\n  }\n  FUN_00036d70(local_2c,uVar12);\n  FUN_00031210();\n  pbVar6 = DAT_00088f58;\n  goto LAB_00037040;\nLAB_00037439:\n  iVar13 = FUN_0001c860();\n  if (iVar13 == 0) {\n    DAT_00088f58 = DAT_00088f58 + -1;\n    FUN_00031210();\n    pbVar6 = DAT_00088f58;\n    goto LAB_00037040;\n  }\nLAB_00037509:\n  pbVar9 = (byte *)FUN_0002f7d0(0);\n  if (DAT_00088f58 <= DAT_00088a34) {\nLAB_00037376:\n    pbVar6 = DAT_00088a34;\n    if (DAT_00088a34 <= pbVar9) goto LAB_00037040;\n  }\nLAB_0003737c:\n  pbVar6 = pbVar9 + 1;\n  goto LAB_00037040;\n}" { (declaration "byte bVar1;" type_identifier identifier ;) (declaration "code *pcVar2;" type_identifier (pointer_declarator "*pcVar2" * identifier) ;) (declaration "undefined *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "byte bVar4;" type_identifier identifier ;) (declaration "char cVar5;" primitive_type identifier ;) (declaration "byte *pbVar6;" type_identifier (pointer_declarator "*pbVar6" * identifier) ;) (declaration "char *pcVar7;" primitive_type (pointer_declarator "*pcVar7" * identifier) ;) (declaration "size_t sVar8;" primitive_type identifier ;) (declaration "void *__s;" primitive_type (pointer_declarator "*__s" * identifier) ;) (declaration "byte *pbVar9;" type_identifier (pointer_declarator "*pbVar9" * identifier) ;) (declaration "char *__s_00;" primitive_type (pointer_declarator "*__s_00" * identifier) ;) (declaration "char *pcVar10;" primitive_type (pointer_declarator "*pcVar10" * identifier) ;) (declaration "size_t sVar11;" primitive_type identifier ;) (declaration "undefined4 uVar12;" type_identifier identifier ;) (declaration "int iVar13;" primitive_type identifier ;) (declaration "byte bVar14;" type_identifier identifier ;) (declaration "uint uVar15;" type_identifier identifier ;) (declaration "size_t sVar16;" primitive_type identifier ;) (declaration "undefined4 extraout_EDX;" type_identifier identifier ;) (declaration "bool bVar17;" primitive_type identifier ;) (declaration "bool bVar18;" primitive_type identifier ;) (declaration "byte bVar19;" type_identifier identifier ;) (declaration "undefined8 uVar20;" type_identifier identifier ;) (declaration "byte *local_34;" type_identifier (pointer_declarator "*local_34" * identifier) ;) (declaration "byte *local_2c;" type_identifier (pointer_declarator "*local_2c" * identifier) ;) (declaration "undefined1 local_28 [24];" type_identifier (array_declarator "local_28 [24]" identifier [ number_literal ]) ;) (expression_statement "bVar19 = 0;" (assignment_expression "bVar19 = 0" identifier = number_literal) ;) (expression_statement "DAT_00088e0c = 0;" (assignment_expression "DAT_00088e0c = 0" identifier = number_literal) ;) (expression_statement "DAT_00088a38 = (byte *)FUN_00028de0(param_1);" (assignment_expression "DAT_00088a38 = (byte *)FUN_00028de0(param_1)" identifier = (cast_expression "(byte *)FUN_00028de0(param_1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00028de0(param_1)" identifier (argument_list "(param_1)" ( identifier ))))) ;) (expression_statement "FUN_0002b740(param_1);" (call_expression "FUN_0002b740(param_1)" identifier (argument_list "(param_1)" ( identifier ))) ;) (expression_statement "FUN_0002a220(0);" (call_expression "FUN_0002a220(0)" identifier (argument_list "(0)" ( number_literal ))) ;) (expression_statement "FUN_0001ccd0(param_1);" (call_expression "FUN_0001ccd0(param_1)" identifier (argument_list "(param_1)" ( identifier ))) ;) (if_statement "if (DAT_000886b8 == 2) {\n    FUN_00038cd0();\n  }" if (parenthesized_expression "(DAT_000886b8 == 2)" ( (binary_expression "DAT_000886b8 == 2" identifier == number_literal) )) (compound_statement "{\n    FUN_00038cd0();\n  }" { (expression_statement "FUN_00038cd0();" (call_expression "FUN_00038cd0()" identifier (argument_list "()" ( ))) ;) })) (labeled_statement "LAB_00036ffa:\n  do {\n    DAT_00088a34 = (byte *)FUN_00028fd0(&DAT_00088f58);\n    if (DAT_00088a34 == (byte *)0x0) {\nLAB_00037649:\n      FUN_0003e1c0(PTR_DAT_0007ff6c);\n      FUN_00028fa0();\n      if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }\n      return;\n    }\n    DAT_00088a0c = (byte *)0x0;\n    pbVar6 = DAT_00088f58;\nLAB_00037040:\n    DAT_00088f58 = pbVar6;\n  } while (DAT_00088a34 <= DAT_00088f58);" statement_identifier : (do_statement "do {\n    DAT_00088a34 = (byte *)FUN_00028fd0(&DAT_00088f58);\n    if (DAT_00088a34 == (byte *)0x0) {\nLAB_00037649:\n      FUN_0003e1c0(PTR_DAT_0007ff6c);\n      FUN_00028fa0();\n      if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }\n      return;\n    }\n    DAT_00088a0c = (byte *)0x0;\n    pbVar6 = DAT_00088f58;\nLAB_00037040:\n    DAT_00088f58 = pbVar6;\n  } while (DAT_00088a34 <= DAT_00088f58);" do (compound_statement "{\n    DAT_00088a34 = (byte *)FUN_00028fd0(&DAT_00088f58);\n    if (DAT_00088a34 == (byte *)0x0) {\nLAB_00037649:\n      FUN_0003e1c0(PTR_DAT_0007ff6c);\n      FUN_00028fa0();\n      if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }\n      return;\n    }\n    DAT_00088a0c = (byte *)0x0;\n    pbVar6 = DAT_00088f58;\nLAB_00037040:\n    DAT_00088f58 = pbVar6;\n  }" { (expression_statement "DAT_00088a34 = (byte *)FUN_00028fd0(&DAT_00088f58);" (assignment_expression "DAT_00088a34 = (byte *)FUN_00028fd0(&DAT_00088f58)" identifier = (cast_expression "(byte *)FUN_00028fd0(&DAT_00088f58)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00028fd0(&DAT_00088f58)" identifier (argument_list "(&DAT_00088f58)" ( (pointer_expression "&DAT_00088f58" & identifier) ))))) ;) (if_statement "if (DAT_00088a34 == (byte *)0x0) {\nLAB_00037649:\n      FUN_0003e1c0(PTR_DAT_0007ff6c);\n      FUN_00028fa0();\n      if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }\n      return;\n    }" if (parenthesized_expression "(DAT_00088a34 == (byte *)0x0)" ( (binary_expression "DAT_00088a34 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_00037649:\n      FUN_0003e1c0(PTR_DAT_0007ff6c);\n      FUN_00028fa0();\n      if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }\n      return;\n    }" { (labeled_statement "LAB_00037649:\n      FUN_0003e1c0(PTR_DAT_0007ff6c);" statement_identifier : (expression_statement "FUN_0003e1c0(PTR_DAT_0007ff6c);" (call_expression "FUN_0003e1c0(PTR_DAT_0007ff6c)" identifier (argument_list "(PTR_DAT_0007ff6c)" ( identifier ))) ;)) (expression_statement "FUN_00028fa0();" (call_expression "FUN_00028fa0()" identifier (argument_list "()" ( ))) ;) (if_statement "if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }" if (parenthesized_expression "((DAT_00088d64 != 0) && (DAT_00088e0c != 0))" ( (binary_expression "(DAT_00088d64 != 0) && (DAT_00088e0c != 0)" (parenthesized_expression "(DAT_00088d64 != 0)" ( (binary_expression "DAT_00088d64 != 0" identifier != number_literal) )) && (parenthesized_expression "(DAT_00088e0c != 0)" ( (binary_expression "DAT_00088e0c != 0" identifier != number_literal) ))) )) (compound_statement "{\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }" { (expression_statement "FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");" (call_expression "FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here")" identifier (argument_list "(DAT_00088d6c,DAT_00088e0c,"first comment found here")" ( identifier , identifier , (string_literal ""first comment found here"" " string_content ") ))) ;) (return_statement "return;" return ;) })) (return_statement "return;" return ;) })) (expression_statement "DAT_00088a0c = (byte *)0x0;" (assignment_expression "DAT_00088a0c = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pbVar6 = DAT_00088f58;" (assignment_expression "pbVar6 = DAT_00088f58" identifier = identifier) ;) (labeled_statement "LAB_00037040:\n    DAT_00088f58 = pbVar6;" statement_identifier : (expression_statement "DAT_00088f58 = pbVar6;" (assignment_expression "DAT_00088f58 = pbVar6" identifier = identifier) ;)) }) while (parenthesized_expression "(DAT_00088a34 <= DAT_00088f58)" ( (binary_expression "DAT_00088a34 <= DAT_00088f58" identifier <= identifier) )) ;)) (labeled_statement "LAB_00037044:\n  cVar5 = (&DAT_000802c0)[DAT_00088f58[-1]];" statement_identifier : (expression_statement "cVar5 = (&DAT_000802c0)[DAT_00088f58[-1]];" (assignment_expression "cVar5 = (&DAT_000802c0)[DAT_00088f58[-1]]" identifier = (subscript_expression "(&DAT_000802c0)[DAT_00088f58[-1]]" (parenthesized_expression "(&DAT_000802c0)" ( (pointer_expression "&DAT_000802c0" & identifier) )) [ (subscript_expression "DAT_00088f58[-1]" identifier [ number_literal ]) ])) ;)) (if_statement "if (cVar5 == '\0') {\n    if (_DAT_00088e00 != 0) {\nLAB_00037065:\n      if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {\n        FUN_0002a220(0);\n      }\n      else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }\n      if (cVar5 != '\0') goto LAB_00037094;\n    }\n  }\n  else {\n    FUN_0003e1c0(PTR_DAT_0007ff6c);\n    if (DAT_00088f58[-1] == 10) {\n      FUN_00029290();\n    }\n    if (_DAT_00088e00 != 0) goto LAB_00037065;\nLAB_00037094:\n    DAT_00088f48 = 0;\n  }" if (parenthesized_expression "(cVar5 == '\0')" ( (binary_expression "cVar5 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (_DAT_00088e00 != 0) {\nLAB_00037065:\n      if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {\n        FUN_0002a220(0);\n      }\n      else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }\n      if (cVar5 != '\0') goto LAB_00037094;\n    }\n  }" { (if_statement "if (_DAT_00088e00 != 0) {\nLAB_00037065:\n      if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {\n        FUN_0002a220(0);\n      }\n      else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }\n      if (cVar5 != '\0') goto LAB_00037094;\n    }" if (parenthesized_expression "(_DAT_00088e00 != 0)" ( (binary_expression "_DAT_00088e00 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_00037065:\n      if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {\n        FUN_0002a220(0);\n      }\n      else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }\n      if (cVar5 != '\0') goto LAB_00037094;\n    }" { (labeled_statement "LAB_00037065:\n      if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {\n        FUN_0002a220(0);\n      }\n      else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }" statement_identifier : (if_statement "if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {\n        FUN_0002a220(0);\n      }\n      else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }" if (parenthesized_expression "(((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1))" ( (binary_expression "((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)" (parenthesized_expression "((_DAT_00088e00 & 0x40) == 0)" ( (binary_expression "(_DAT_00088e00 & 0x40) == 0" (parenthesized_expression "(_DAT_00088e00 & 0x40)" ( (binary_expression "_DAT_00088e00 & 0x40" identifier & number_literal) )) == number_literal) )) || (parenthesized_expression "((int)DAT_00088f14 < 1)" ( (binary_expression "(int)DAT_00088f14 < 1" (cast_expression "(int)DAT_00088f14" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) ))) )) (compound_statement "{\n        FUN_0002a220(0);\n      }" { (expression_statement "FUN_0002a220(0);" (call_expression "FUN_0002a220(0)" identifier (argument_list "(0)" ( number_literal ))) ;) }) (else_clause "else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }" else (compound_statement "{\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }" { (expression_statement "local_2c = (byte *)FUN_0002f7d0(0);" (assignment_expression "local_2c = (byte *)FUN_0002f7d0(0)" identifier = (cast_expression "(byte *)FUN_0002f7d0(0)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0002f7d0(0)" identifier (argument_list "(0)" ( number_literal ))))) ;) (if_statement "if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }" if (parenthesized_expression "(DAT_00088a0c != local_2c)" ( (binary_expression "DAT_00088a0c != local_2c" identifier != identifier) )) (compound_statement "{\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }" { (expression_statement "sVar8 = (int)local_2c - (int)DAT_00088f58;" (assignment_expression "sVar8 = (int)local_2c - (int)DAT_00088f58" identifier = (binary_expression "(int)local_2c - (int)DAT_00088f58" (cast_expression "(int)local_2c" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)DAT_00088f58" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "DAT_00088a0c = local_2c;" (assignment_expression "DAT_00088a0c = local_2c" identifier = identifier) ;) (expression_statement "__s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);" (assignment_expression "__s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2)" identifier = (cast_expression "(void *)xmalloc(sVar8 + DAT_00088f14 + 2)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(sVar8 + DAT_00088f14 + 2)" identifier (argument_list "(sVar8 + DAT_00088f14 + 2)" ( (binary_expression "sVar8 + DAT_00088f14 + 2" (binary_expression "sVar8 + DAT_00088f14" identifier + identifier) + number_literal) ))))) ;) (expression_statement "sVar11 = DAT_00088f14;" (assignment_expression "sVar11 = DAT_00088f14" identifier = identifier) ;) (expression_statement "memset(__s,0x3e,DAT_00088f14);" (call_expression "memset(__s,0x3e,DAT_00088f14)" identifier (argument_list "(__s,0x3e,DAT_00088f14)" ( identifier , number_literal , identifier ))) ;) (expression_statement "*(undefined1 *)((int)__s + sVar11) = 0x20;" (assignment_expression "*(undefined1 *)((int)__s + sVar11) = 0x20" (pointer_expression "*(undefined1 *)((int)__s + sVar11)" * (cast_expression "(undefined1 *)((int)__s + sVar11)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)__s + sVar11)" ( (binary_expression "(int)__s + sVar11" (cast_expression "(int)__s" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = number_literal) ;) (expression_statement "memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);" (call_expression "memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8)" identifier (argument_list "((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8)" ( (cast_expression "(void *)((int)__s + DAT_00088f14 + 1)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)__s + DAT_00088f14 + 1)" ( (binary_expression "(int)__s + DAT_00088f14 + 1" (binary_expression "(int)__s + DAT_00088f14" (cast_expression "(int)__s" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) ))) , identifier , identifier ))) ;) (expression_statement "*(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;" (assignment_expression "*(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0" (pointer_expression "*(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1)" * (cast_expression "(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)__s + DAT_00088f14 + sVar8 + 1)" ( (binary_expression "(int)__s + DAT_00088f14 + sVar8 + 1" (binary_expression "(int)__s + DAT_00088f14 + sVar8" (binary_expression "(int)__s + DAT_00088f14" (cast_expression "(int)__s" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0002a220(__s);" (call_expression "FUN_0002a220(__s)" identifier (argument_list "(__s)" ( identifier ))) ;) })) })))) (if_statement "if (cVar5 != '\0') goto LAB_00037094;" if (parenthesized_expression "(cVar5 != '\0')" ( (binary_expression "cVar5 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00037094;" goto statement_identifier ;)) })) }) (else_clause "else {\n    FUN_0003e1c0(PTR_DAT_0007ff6c);\n    if (DAT_00088f58[-1] == 10) {\n      FUN_00029290();\n    }\n    if (_DAT_00088e00 != 0) goto LAB_00037065;\nLAB_00037094:\n    DAT_00088f48 = 0;\n  }" else (compound_statement "{\n    FUN_0003e1c0(PTR_DAT_0007ff6c);\n    if (DAT_00088f58[-1] == 10) {\n      FUN_00029290();\n    }\n    if (_DAT_00088e00 != 0) goto LAB_00037065;\nLAB_00037094:\n    DAT_00088f48 = 0;\n  }" { (expression_statement "FUN_0003e1c0(PTR_DAT_0007ff6c);" (call_expression "FUN_0003e1c0(PTR_DAT_0007ff6c)" identifier (argument_list "(PTR_DAT_0007ff6c)" ( identifier ))) ;) (if_statement "if (DAT_00088f58[-1] == 10) {\n      FUN_00029290();\n    }" if (parenthesized_expression "(DAT_00088f58[-1] == 10)" ( (binary_expression "DAT_00088f58[-1] == 10" (subscript_expression "DAT_00088f58[-1]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n      FUN_00029290();\n    }" { (expression_statement "FUN_00029290();" (call_expression "FUN_00029290()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (_DAT_00088e00 != 0) goto LAB_00037065;" if (parenthesized_expression "(_DAT_00088e00 != 0)" ( (binary_expression "_DAT_00088e00 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00037065;" goto statement_identifier ;)) (labeled_statement "LAB_00037094:\n    DAT_00088f48 = 0;" statement_identifier : (expression_statement "DAT_00088f48 = 0;" (assignment_expression "DAT_00088f48 = 0" identifier = number_literal) ;)) }))) (do_statement "do {\n    puVar3 = PTR__sch_istable_0007ff84;\n    pbVar6 = DAT_00088f58 + 1;\n    bVar14 = *DAT_00088f58;\n    uVar15 = (uint)bVar14;\n    DAT_00088f58 = pbVar6;\n    if (0x17 < (byte)(uVar15 - 9)) {\n      bVar4 = (&DAT_000803c0)[uVar15];\n      goto joined_r0x000370d3;\n    }\n  } while ((0x800009U >> (uVar15 - 9 & 0x1f) & 1) != 0);" do (compound_statement "{\n    puVar3 = PTR__sch_istable_0007ff84;\n    pbVar6 = DAT_00088f58 + 1;\n    bVar14 = *DAT_00088f58;\n    uVar15 = (uint)bVar14;\n    DAT_00088f58 = pbVar6;\n    if (0x17 < (byte)(uVar15 - 9)) {\n      bVar4 = (&DAT_000803c0)[uVar15];\n      goto joined_r0x000370d3;\n    }\n  }" { (expression_statement "puVar3 = PTR__sch_istable_0007ff84;" (assignment_expression "puVar3 = PTR__sch_istable_0007ff84" identifier = identifier) ;) (expression_statement "pbVar6 = DAT_00088f58 + 1;" (assignment_expression "pbVar6 = DAT_00088f58 + 1" identifier = (binary_expression "DAT_00088f58 + 1" identifier + number_literal)) ;) (expression_statement "bVar14 = *DAT_00088f58;" (assignment_expression "bVar14 = *DAT_00088f58" identifier = (pointer_expression "*DAT_00088f58" * identifier)) ;) (expression_statement "uVar15 = (uint)bVar14;" (assignment_expression "uVar15 = (uint)bVar14" identifier = (cast_expression "(uint)bVar14" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "DAT_00088f58 = pbVar6;" (assignment_expression "DAT_00088f58 = pbVar6" identifier = identifier) ;) (if_statement "if (0x17 < (byte)(uVar15 - 9)) {\n      bVar4 = (&DAT_000803c0)[uVar15];\n      goto joined_r0x000370d3;\n    }" if (parenthesized_expression "(0x17 < (byte)(uVar15 - 9))" ( (binary_expression "0x17 < (byte)(uVar15 - 9)" number_literal < (call_expression "(byte)(uVar15 - 9)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(uVar15 - 9)" ( (binary_expression "uVar15 - 9" identifier - number_literal) )))) )) (compound_statement "{\n      bVar4 = (&DAT_000803c0)[uVar15];\n      goto joined_r0x000370d3;\n    }" { (expression_statement "bVar4 = (&DAT_000803c0)[uVar15];" (assignment_expression "bVar4 = (&DAT_000803c0)[uVar15]" identifier = (subscript_expression "(&DAT_000803c0)[uVar15]" (parenthesized_expression "(&DAT_000803c0)" ( (pointer_expression "&DAT_000803c0" & identifier) )) [ identifier ])) ;) (goto_statement "goto joined_r0x000370d3;" goto statement_identifier ;) })) }) while (parenthesized_expression "((0x800009U >> (uVar15 - 9 & 0x1f) & 1) != 0)" ( (binary_expression "(0x800009U >> (uVar15 - 9 & 0x1f) & 1) != 0" (parenthesized_expression "(0x800009U >> (uVar15 - 9 & 0x1f) & 1)" ( (binary_expression "0x800009U >> (uVar15 - 9 & 0x1f) & 1" (binary_expression "0x800009U >> (uVar15 - 9 & 0x1f)" number_literal >> (parenthesized_expression "(uVar15 - 9 & 0x1f)" ( (binary_expression "uVar15 - 9 & 0x1f" (binary_expression "uVar15 - 9" identifier - number_literal) & number_literal) ))) & number_literal) )) != number_literal) )) ;) (expression_statement "bVar4 = (&DAT_000803c0)[uVar15];" (assignment_expression "bVar4 = (&DAT_000803c0)[uVar15]" identifier = (subscript_expression "(&DAT_000803c0)[uVar15]" (parenthesized_expression "(&DAT_000803c0)" ( (pointer_expression "&DAT_000803c0" & identifier) )) [ identifier ])) ;) (labeled_statement "joined_r0x000370d3:\n  if (((bVar4 & 2) == 0) && (bVar14 != 0x22)) {\n    if ((&DAT_000802c0)[uVar15] != '\0') goto LAB_00037040;\n    if ((PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0) {\n      iVar13 = FUN_0001c860();\n      if (iVar13 != 0) goto LAB_00037509;\n      iVar13 = (char)bVar14 + -0x30;\n      bVar4 = *DAT_00088f58;\n      bVar1 = puVar3[(uint)bVar4 * 2];\n      pbVar9 = DAT_00088f58;\n      while ((bVar1 & 4) != 0) {\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }\n      DAT_00088f58 = pbVar9 + 1;\n      if (*pbVar9 == 0x3a) {\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }\n    }\n    DAT_00088f58 = pbVar6;\n    if (bVar14 == 0) goto LAB_00037439;\n    pcVar7 = strchr(PTR_DAT_0007ffa0,(int)(char)bVar14);\n    bVar17 = false;\n    bVar18 = pcVar7 == (char *)0x0;\n    if (bVar18) goto LAB_00037439;\n    local_2c = DAT_00088f58;\n    iVar13 = 4;\n    pbVar6 = DAT_00088f58;\n    pbVar9 = &DAT_0005e3fa;\n    do {\n      if (iVar13 == 0) break;\n      iVar13 = iVar13 + -1;\n      bVar17 = *pbVar6 < *pbVar9;\n      bVar18 = *pbVar6 == *pbVar9;\n      pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;\n      pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;\n    } while (bVar18);\n    if ((!bVar17 && !bVar18) == bVar17) {\n      FUN_00029290();\n      pbVar6 = local_2c + 4;\n      local_2c = pbVar6;\n      pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");\n      if (pbVar9 == (byte *)0x0) {\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }\n      else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }\n      iVar13 = (int)pbVar9 - (int)DAT_00088a1c;\n      DAT_00088a18 = pbVar9;\n      pcVar7 = (char *)xmalloc(iVar13);\n      __s_00 = pcVar7;\n      while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }\n      pcVar7[(int)pcVar10] = '\0';\n      if (local_34 != (byte *)0x0) {\n        free(local_34);\n      }\n      sVar11 = strlen(__s_00);\n      FUN_00038130(local_28,sVar11);\n      FUN_00038310(local_28,__s_00,sVar11);\n      FUN_00028ea0(local_28,DAT_00088f58,0);\n      FUN_000381b0(local_28);\n      pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);\n      DAT_00088a34 = pbVar6;\n      free(__s_00);\n    }\n    else {\n      FUN_00030fc0();\n      pbVar6 = DAT_00088a34;\n    }\n    if (pbVar6 <= DAT_00088f58) goto LAB_00036ffa;\n    goto LAB_00037044;\n  }" statement_identifier : (if_statement "if (((bVar4 & 2) == 0) && (bVar14 != 0x22)) {\n    if ((&DAT_000802c0)[uVar15] != '\0') goto LAB_00037040;\n    if ((PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0) {\n      iVar13 = FUN_0001c860();\n      if (iVar13 != 0) goto LAB_00037509;\n      iVar13 = (char)bVar14 + -0x30;\n      bVar4 = *DAT_00088f58;\n      bVar1 = puVar3[(uint)bVar4 * 2];\n      pbVar9 = DAT_00088f58;\n      while ((bVar1 & 4) != 0) {\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }\n      DAT_00088f58 = pbVar9 + 1;\n      if (*pbVar9 == 0x3a) {\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }\n    }\n    DAT_00088f58 = pbVar6;\n    if (bVar14 == 0) goto LAB_00037439;\n    pcVar7 = strchr(PTR_DAT_0007ffa0,(int)(char)bVar14);\n    bVar17 = false;\n    bVar18 = pcVar7 == (char *)0x0;\n    if (bVar18) goto LAB_00037439;\n    local_2c = DAT_00088f58;\n    iVar13 = 4;\n    pbVar6 = DAT_00088f58;\n    pbVar9 = &DAT_0005e3fa;\n    do {\n      if (iVar13 == 0) break;\n      iVar13 = iVar13 + -1;\n      bVar17 = *pbVar6 < *pbVar9;\n      bVar18 = *pbVar6 == *pbVar9;\n      pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;\n      pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;\n    } while (bVar18);\n    if ((!bVar17 && !bVar18) == bVar17) {\n      FUN_00029290();\n      pbVar6 = local_2c + 4;\n      local_2c = pbVar6;\n      pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");\n      if (pbVar9 == (byte *)0x0) {\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }\n      else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }\n      iVar13 = (int)pbVar9 - (int)DAT_00088a1c;\n      DAT_00088a18 = pbVar9;\n      pcVar7 = (char *)xmalloc(iVar13);\n      __s_00 = pcVar7;\n      while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }\n      pcVar7[(int)pcVar10] = '\0';\n      if (local_34 != (byte *)0x0) {\n        free(local_34);\n      }\n      sVar11 = strlen(__s_00);\n      FUN_00038130(local_28,sVar11);\n      FUN_00038310(local_28,__s_00,sVar11);\n      FUN_00028ea0(local_28,DAT_00088f58,0);\n      FUN_000381b0(local_28);\n      pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);\n      DAT_00088a34 = pbVar6;\n      free(__s_00);\n    }\n    else {\n      FUN_00030fc0();\n      pbVar6 = DAT_00088a34;\n    }\n    if (pbVar6 <= DAT_00088f58) goto LAB_00036ffa;\n    goto LAB_00037044;\n  }" if (parenthesized_expression "(((bVar4 & 2) == 0) && (bVar14 != 0x22))" ( (binary_expression "((bVar4 & 2) == 0) && (bVar14 != 0x22)" (parenthesized_expression "((bVar4 & 2) == 0)" ( (binary_expression "(bVar4 & 2) == 0" (parenthesized_expression "(bVar4 & 2)" ( (binary_expression "bVar4 & 2" identifier & number_literal) )) == number_literal) )) && (parenthesized_expression "(bVar14 != 0x22)" ( (binary_expression "bVar14 != 0x22" identifier != number_literal) ))) )) (compound_statement "{\n    if ((&DAT_000802c0)[uVar15] != '\0') goto LAB_00037040;\n    if ((PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0) {\n      iVar13 = FUN_0001c860();\n      if (iVar13 != 0) goto LAB_00037509;\n      iVar13 = (char)bVar14 + -0x30;\n      bVar4 = *DAT_00088f58;\n      bVar1 = puVar3[(uint)bVar4 * 2];\n      pbVar9 = DAT_00088f58;\n      while ((bVar1 & 4) != 0) {\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }\n      DAT_00088f58 = pbVar9 + 1;\n      if (*pbVar9 == 0x3a) {\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }\n    }\n    DAT_00088f58 = pbVar6;\n    if (bVar14 == 0) goto LAB_00037439;\n    pcVar7 = strchr(PTR_DAT_0007ffa0,(int)(char)bVar14);\n    bVar17 = false;\n    bVar18 = pcVar7 == (char *)0x0;\n    if (bVar18) goto LAB_00037439;\n    local_2c = DAT_00088f58;\n    iVar13 = 4;\n    pbVar6 = DAT_00088f58;\n    pbVar9 = &DAT_0005e3fa;\n    do {\n      if (iVar13 == 0) break;\n      iVar13 = iVar13 + -1;\n      bVar17 = *pbVar6 < *pbVar9;\n      bVar18 = *pbVar6 == *pbVar9;\n      pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;\n      pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;\n    } while (bVar18);\n    if ((!bVar17 && !bVar18) == bVar17) {\n      FUN_00029290();\n      pbVar6 = local_2c + 4;\n      local_2c = pbVar6;\n      pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");\n      if (pbVar9 == (byte *)0x0) {\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }\n      else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }\n      iVar13 = (int)pbVar9 - (int)DAT_00088a1c;\n      DAT_00088a18 = pbVar9;\n      pcVar7 = (char *)xmalloc(iVar13);\n      __s_00 = pcVar7;\n      while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }\n      pcVar7[(int)pcVar10] = '\0';\n      if (local_34 != (byte *)0x0) {\n        free(local_34);\n      }\n      sVar11 = strlen(__s_00);\n      FUN_00038130(local_28,sVar11);\n      FUN_00038310(local_28,__s_00,sVar11);\n      FUN_00028ea0(local_28,DAT_00088f58,0);\n      FUN_000381b0(local_28);\n      pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);\n      DAT_00088a34 = pbVar6;\n      free(__s_00);\n    }\n    else {\n      FUN_00030fc0();\n      pbVar6 = DAT_00088a34;\n    }\n    if (pbVar6 <= DAT_00088f58) goto LAB_00036ffa;\n    goto LAB_00037044;\n  }" { (if_statement "if ((&DAT_000802c0)[uVar15] != '\0') goto LAB_00037040;" if (parenthesized_expression "((&DAT_000802c0)[uVar15] != '\0')" ( (binary_expression "(&DAT_000802c0)[uVar15] != '\0'" (subscript_expression "(&DAT_000802c0)[uVar15]" (parenthesized_expression "(&DAT_000802c0)" ( (pointer_expression "&DAT_000802c0" & identifier) )) [ identifier ]) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00037040;" goto statement_identifier ;)) (if_statement "if ((PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0) {\n      iVar13 = FUN_0001c860();\n      if (iVar13 != 0) goto LAB_00037509;\n      iVar13 = (char)bVar14 + -0x30;\n      bVar4 = *DAT_00088f58;\n      bVar1 = puVar3[(uint)bVar4 * 2];\n      pbVar9 = DAT_00088f58;\n      while ((bVar1 & 4) != 0) {\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }\n      DAT_00088f58 = pbVar9 + 1;\n      if (*pbVar9 == 0x3a) {\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }\n    }" if (parenthesized_expression "((PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0)" ( (binary_expression "(PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0" (parenthesized_expression "(PTR__sch_istable_0007ff84[uVar15 * 2] & 4)" ( (binary_expression "PTR__sch_istable_0007ff84[uVar15 * 2] & 4" (subscript_expression "PTR__sch_istable_0007ff84[uVar15 * 2]" identifier [ (binary_expression "uVar15 * 2" identifier * number_literal) ]) & number_literal) )) != number_literal) )) (compound_statement "{\n      iVar13 = FUN_0001c860();\n      if (iVar13 != 0) goto LAB_00037509;\n      iVar13 = (char)bVar14 + -0x30;\n      bVar4 = *DAT_00088f58;\n      bVar1 = puVar3[(uint)bVar4 * 2];\n      pbVar9 = DAT_00088f58;\n      while ((bVar1 & 4) != 0) {\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }\n      DAT_00088f58 = pbVar9 + 1;\n      if (*pbVar9 == 0x3a) {\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }\n    }" { (expression_statement "iVar13 = FUN_0001c860();" (assignment_expression "iVar13 = FUN_0001c860()" identifier = (call_expression "FUN_0001c860()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar13 != 0) goto LAB_00037509;" if (parenthesized_expression "(iVar13 != 0)" ( (binary_expression "iVar13 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00037509;" goto statement_identifier ;)) (expression_statement "iVar13 = (char)bVar14 + -0x30;" (assignment_expression "iVar13 = (char)bVar14 + -0x30" identifier = (binary_expression "(char)bVar14 + -0x30" (cast_expression "(char)bVar14" ( (type_descriptor "char" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "bVar4 = *DAT_00088f58;" (assignment_expression "bVar4 = *DAT_00088f58" identifier = (pointer_expression "*DAT_00088f58" * identifier)) ;) (expression_statement "bVar1 = puVar3[(uint)bVar4 * 2];" (assignment_expression "bVar1 = puVar3[(uint)bVar4 * 2]" identifier = (subscript_expression "puVar3[(uint)bVar4 * 2]" identifier [ (binary_expression "(uint)bVar4 * 2" (cast_expression "(uint)bVar4" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal) ])) ;) (expression_statement "pbVar9 = DAT_00088f58;" (assignment_expression "pbVar9 = DAT_00088f58" identifier = identifier) ;) (while_statement "while ((bVar1 & 4) != 0) {\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }" while (parenthesized_expression "((bVar1 & 4) != 0)" ( (binary_expression "(bVar1 & 4) != 0" (parenthesized_expression "(bVar1 & 4)" ( (binary_expression "bVar1 & 4" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }" { (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;" (assignment_expression "iVar13 = (char)bVar4 + -0x30 + iVar13 * 10" identifier = (binary_expression "(char)bVar4 + -0x30 + iVar13 * 10" (binary_expression "(char)bVar4 + -0x30" (cast_expression "(char)bVar4" ( (type_descriptor "char" primitive_type) ) identifier) + number_literal) + (binary_expression "iVar13 * 10" identifier * number_literal))) ;) (expression_statement "bVar4 = *pbVar9;" (assignment_expression "bVar4 = *pbVar9" identifier = (pointer_expression "*pbVar9" * identifier)) ;) (expression_statement "bVar1 = puVar3[(uint)bVar4 * 2];" (assignment_expression "bVar1 = puVar3[(uint)bVar4 * 2]" identifier = (subscript_expression "puVar3[(uint)bVar4 * 2]" identifier [ (binary_expression "(uint)bVar4 * 2" (cast_expression "(uint)bVar4" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal) ])) ;) })) (expression_statement "DAT_00088f58 = pbVar9 + 1;" (assignment_expression "DAT_00088f58 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (if_statement "if (*pbVar9 == 0x3a) {\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }" if (parenthesized_expression "(*pbVar9 == 0x3a)" ( (binary_expression "*pbVar9 == 0x3a" (pointer_expression "*pbVar9" * identifier) == number_literal) )) (compound_statement "{\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }" { (expression_statement "FUN_0003a8d0(iVar13);" (call_expression "FUN_0003a8d0(iVar13)" identifier (argument_list "(iVar13)" ( identifier ))) ;) (expression_statement "uVar12 = FUN_0003aa40(iVar13,0);" (assignment_expression "uVar12 = FUN_0003aa40(iVar13,0)" identifier = (call_expression "FUN_0003aa40(iVar13,0)" identifier (argument_list "(iVar13,0)" ( identifier , number_literal )))) ;) (expression_statement "FUN_0003d480(uVar12);" (call_expression "FUN_0003d480(uVar12)" identifier (argument_list "(uVar12)" ( identifier ))) ;) (expression_statement "pbVar6 = DAT_00088f58;" (assignment_expression "pbVar6 = DAT_00088f58" identifier = identifier) ;) (goto_statement "goto LAB_00037040;" goto statement_identifier ;) })) })) (expression_statement "DAT_00088f58 = pbVar6;" (assignment_expression "DAT_00088f58 = pbVar6" identifier = identifier) ;) (if_statement "if (bVar14 == 0) goto LAB_00037439;" if (parenthesized_expression "(bVar14 == 0)" ( (binary_expression "bVar14 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00037439;" goto statement_identifier ;)) (expression_statement "pcVar7 = strchr(PTR_DAT_0007ffa0,(int)(char)bVar14);" (assignment_expression "pcVar7 = strchr(PTR_DAT_0007ffa0,(int)(char)bVar14)" identifier = (call_expression "strchr(PTR_DAT_0007ffa0,(int)(char)bVar14)" identifier (argument_list "(PTR_DAT_0007ffa0,(int)(char)bVar14)" ( identifier , (cast_expression "(int)(char)bVar14" ( (type_descriptor "int" primitive_type) ) (cast_expression "(char)bVar14" ( (type_descriptor "char" primitive_type) ) identifier)) )))) ;) (expression_statement "bVar17 = false;" (assignment_expression "bVar17 = false" identifier = false) ;) (expression_statement "bVar18 = pcVar7 == (char *)0x0;" (assignment_expression "bVar18 = pcVar7 == (char *)0x0" identifier = (binary_expression "pcVar7 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (if_statement "if (bVar18) goto LAB_00037439;" if (parenthesized_expression "(bVar18)" ( identifier )) (goto_statement "goto LAB_00037439;" goto statement_identifier ;)) (expression_statement "local_2c = DAT_00088f58;" (assignment_expression "local_2c = DAT_00088f58" identifier = identifier) ;) (expression_statement "iVar13 = 4;" (assignment_expression "iVar13 = 4" identifier = number_literal) ;) (expression_statement "pbVar6 = DAT_00088f58;" (assignment_expression "pbVar6 = DAT_00088f58" identifier = identifier) ;) (expression_statement "pbVar9 = &DAT_0005e3fa;" (assignment_expression "pbVar9 = &DAT_0005e3fa" identifier = (pointer_expression "&DAT_0005e3fa" & identifier)) ;) (do_statement "do {\n      if (iVar13 == 0) break;\n      iVar13 = iVar13 + -1;\n      bVar17 = *pbVar6 < *pbVar9;\n      bVar18 = *pbVar6 == *pbVar9;\n      pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;\n      pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;\n    } while (bVar18);" do (compound_statement "{\n      if (iVar13 == 0) break;\n      iVar13 = iVar13 + -1;\n      bVar17 = *pbVar6 < *pbVar9;\n      bVar18 = *pbVar6 == *pbVar9;\n      pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;\n      pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;\n    }" { (if_statement "if (iVar13 == 0) break;" if (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar13 = iVar13 + -1;" (assignment_expression "iVar13 = iVar13 + -1" identifier = (binary_expression "iVar13 + -1" identifier + number_literal)) ;) (expression_statement "bVar17 = *pbVar6 < *pbVar9;" (assignment_expression "bVar17 = *pbVar6 < *pbVar9" identifier = (binary_expression "*pbVar6 < *pbVar9" (pointer_expression "*pbVar6" * identifier) < (pointer_expression "*pbVar9" * identifier))) ;) (expression_statement "bVar18 = *pbVar6 == *pbVar9;" (assignment_expression "bVar18 = *pbVar6 == *pbVar9" identifier = (binary_expression "*pbVar6 == *pbVar9" (pointer_expression "*pbVar6" * identifier) == (pointer_expression "*pbVar9" * identifier))) ;) (expression_statement "pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;" (assignment_expression "pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1" identifier = (binary_expression "pbVar6 + (uint)bVar19 * -2 + 1" (binary_expression "pbVar6 + (uint)bVar19 * -2" identifier + (binary_expression "(uint)bVar19 * -2" (cast_expression "(uint)bVar19" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1" identifier = (binary_expression "pbVar9 + (uint)bVar19 * -2 + 1" (binary_expression "pbVar9 + (uint)bVar19 * -2" identifier + (binary_expression "(uint)bVar19 * -2" (cast_expression "(uint)bVar19" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar18)" ( identifier )) ;) (if_statement "if ((!bVar17 && !bVar18) == bVar17) {\n      FUN_00029290();\n      pbVar6 = local_2c + 4;\n      local_2c = pbVar6;\n      pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");\n      if (pbVar9 == (byte *)0x0) {\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }\n      else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }\n      iVar13 = (int)pbVar9 - (int)DAT_00088a1c;\n      DAT_00088a18 = pbVar9;\n      pcVar7 = (char *)xmalloc(iVar13);\n      __s_00 = pcVar7;\n      while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }\n      pcVar7[(int)pcVar10] = '\0';\n      if (local_34 != (byte *)0x0) {\n        free(local_34);\n      }\n      sVar11 = strlen(__s_00);\n      FUN_00038130(local_28,sVar11);\n      FUN_00038310(local_28,__s_00,sVar11);\n      FUN_00028ea0(local_28,DAT_00088f58,0);\n      FUN_000381b0(local_28);\n      pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);\n      DAT_00088a34 = pbVar6;\n      free(__s_00);\n    }\n    else {\n      FUN_00030fc0();\n      pbVar6 = DAT_00088a34;\n    }" if (parenthesized_expression "((!bVar17 && !bVar18) == bVar17)" ( (binary_expression "(!bVar17 && !bVar18) == bVar17" (parenthesized_expression "(!bVar17 && !bVar18)" ( (binary_expression "!bVar17 && !bVar18" (unary_expression "!bVar17" ! identifier) && (unary_expression "!bVar18" ! identifier)) )) == identifier) )) (compound_statement "{\n      FUN_00029290();\n      pbVar6 = local_2c + 4;\n      local_2c = pbVar6;\n      pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");\n      if (pbVar9 == (byte *)0x0) {\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }\n      else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }\n      iVar13 = (int)pbVar9 - (int)DAT_00088a1c;\n      DAT_00088a18 = pbVar9;\n      pcVar7 = (char *)xmalloc(iVar13);\n      __s_00 = pcVar7;\n      while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }\n      pcVar7[(int)pcVar10] = '\0';\n      if (local_34 != (byte *)0x0) {\n        free(local_34);\n      }\n      sVar11 = strlen(__s_00);\n      FUN_00038130(local_28,sVar11);\n      FUN_00038310(local_28,__s_00,sVar11);\n      FUN_00028ea0(local_28,DAT_00088f58,0);\n      FUN_000381b0(local_28);\n      pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);\n      DAT_00088a34 = pbVar6;\n      free(__s_00);\n    }" { (expression_statement "FUN_00029290();" (call_expression "FUN_00029290()" identifier (argument_list "()" ( ))) ;) (expression_statement "pbVar6 = local_2c + 4;" (assignment_expression "pbVar6 = local_2c + 4" identifier = (binary_expression "local_2c + 4" identifier + number_literal)) ;) (expression_statement "local_2c = pbVar6;" (assignment_expression "local_2c = pbVar6" identifier = identifier) ;) (expression_statement "pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");" (assignment_expression "pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n")" identifier = (cast_expression "(byte *)strstr((char *)pbVar6,"#NO_APP\n")" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "strstr((char *)pbVar6,"#NO_APP\n")" identifier (argument_list "((char *)pbVar6,"#NO_APP\n")" ( (cast_expression "(char *)pbVar6" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""#NO_APP\n"" " string_content escape_sequence ") ))))) ;) (if_statement "if (pbVar9 == (byte *)0x0) {\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }\n      else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }" if (parenthesized_expression "(pbVar9 == (byte *)0x0)" ( (binary_expression "pbVar9 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }" { (expression_statement "sVar11 = (int)DAT_00088a34 - (int)pbVar6;" (assignment_expression "sVar11 = (int)DAT_00088a34 - (int)pbVar6" identifier = (binary_expression "(int)DAT_00088a34 - (int)pbVar6" (cast_expression "(int)DAT_00088a34" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar6" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "local_34 = (byte *)xmalloc(sVar11 + 1);" (assignment_expression "local_34 = (byte *)xmalloc(sVar11 + 1)" identifier = (cast_expression "(byte *)xmalloc(sVar11 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(sVar11 + 1)" identifier (argument_list "(sVar11 + 1)" ( (binary_expression "sVar11 + 1" identifier + number_literal) ))))) ;) (expression_statement "memcpy(local_34,local_2c,sVar11);" (call_expression "memcpy(local_34,local_2c,sVar11)" identifier (argument_list "(local_34,local_2c,sVar11)" ( identifier , identifier , identifier ))) ;) (while_statement "while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }" while (parenthesized_expression "(pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0)" ( (comma_expression "pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0" (assignment_expression "pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38)" identifier = (cast_expression "(byte *)FUN_00028fd0(&DAT_00088a38)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00028fd0(&DAT_00088a38)" identifier (argument_list "(&DAT_00088a38)" ( (pointer_expression "&DAT_00088a38" & identifier) ))))) , (comma_expression "pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0" (assignment_expression "pbVar6 = DAT_00088a38" identifier = identifier) , (binary_expression "pbVar9 != (byte *)0x0" identifier != (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)))) )) (compound_statement "{\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }" { (expression_statement "DAT_00088f58 = DAT_00088a38;" (assignment_expression "DAT_00088f58 = DAT_00088a38" identifier = identifier) ;) (expression_statement "DAT_00088a34 = pbVar9;" (assignment_expression "DAT_00088a34 = pbVar9" identifier = identifier) ;) (expression_statement "pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");" (assignment_expression "pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n")" identifier = (call_expression "strstr((char *)DAT_00088a38,"#NO_APP\n")" identifier (argument_list "((char *)DAT_00088a38,"#NO_APP\n")" ( (cast_expression "(char *)DAT_00088a38" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""#NO_APP\n"" " string_content escape_sequence ") )))) ;) (if_statement "if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }" if (parenthesized_expression "(pcVar7 != (char *)0x0)" ( (binary_expression "pcVar7 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }" { (expression_statement "sVar16 = (int)pcVar7 - (int)pbVar6;" (assignment_expression "sVar16 = (int)pcVar7 - (int)pbVar6" identifier = (binary_expression "(int)pcVar7 - (int)pbVar6" (cast_expression "(int)pcVar7" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar6" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "sVar8 = sVar11 + sVar16;" (assignment_expression "sVar8 = sVar11 + sVar16" identifier = (binary_expression "sVar11 + sVar16" identifier + identifier)) ;) (expression_statement "local_34 = (byte *)xrealloc(local_34,sVar8);" (assignment_expression "local_34 = (byte *)xrealloc(local_34,sVar8)" identifier = (cast_expression "(byte *)xrealloc(local_34,sVar8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xrealloc(local_34,sVar8)" identifier (argument_list "(local_34,sVar8)" ( identifier , identifier ))))) ;) (expression_statement "memcpy(local_34 + sVar11,DAT_00088a38,sVar16);" (call_expression "memcpy(local_34 + sVar11,DAT_00088a38,sVar16)" identifier (argument_list "(local_34 + sVar11,DAT_00088a38,sVar16)" ( (binary_expression "local_34 + sVar11" identifier + identifier) , identifier , identifier ))) ;) (expression_statement "DAT_00088f58 = (byte *)(pcVar7 + 8);" (assignment_expression "DAT_00088f58 = (byte *)(pcVar7 + 8)" identifier = (cast_expression "(byte *)(pcVar7 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar7 + 8)" ( (binary_expression "pcVar7 + 8" identifier + number_literal) )))) ;) (expression_statement "sVar11 = sVar8;" (assignment_expression "sVar11 = sVar8" identifier = identifier) ;) (goto_statement "goto LAB_00037b57;" goto statement_identifier ;) })) (expression_statement "sVar16 = (int)pbVar9 - (int)pbVar6;" (assignment_expression "sVar16 = (int)pbVar9 - (int)pbVar6" identifier = (binary_expression "(int)pbVar9 - (int)pbVar6" (cast_expression "(int)pbVar9" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar6" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "sVar8 = sVar11 + sVar16;" (assignment_expression "sVar8 = sVar11 + sVar16" identifier = (binary_expression "sVar11 + sVar16" identifier + identifier)) ;) (expression_statement "local_34 = (byte *)xrealloc(local_34,sVar8);" (assignment_expression "local_34 = (byte *)xrealloc(local_34,sVar8)" identifier = (cast_expression "(byte *)xrealloc(local_34,sVar8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xrealloc(local_34,sVar8)" identifier (argument_list "(local_34,sVar8)" ( identifier , identifier ))))) ;) (expression_statement "memcpy(local_34 + sVar11,DAT_00088a38,sVar16);" (call_expression "memcpy(local_34 + sVar11,DAT_00088a38,sVar16)" identifier (argument_list "(local_34 + sVar11,DAT_00088a38,sVar16)" ( (binary_expression "local_34 + sVar11" identifier + identifier) , identifier , identifier ))) ;) (expression_statement "sVar11 = sVar8;" (assignment_expression "sVar11 = sVar8" identifier = identifier) ;) })) (expression_statement "DAT_00088f58 = (byte *)0x0;" (assignment_expression "DAT_00088f58 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_00037b57:\n        local_2c = local_34;" statement_identifier : (expression_statement "local_2c = local_34;" (assignment_expression "local_2c = local_34" identifier = identifier) ;)) (expression_statement "pbVar9 = local_34 + sVar11;" (assignment_expression "pbVar9 = local_34 + sVar11" identifier = (binary_expression "local_34 + sVar11" identifier + identifier)) ;) (expression_statement "DAT_00088a1c = local_34;" (assignment_expression "DAT_00088a1c = local_34" identifier = identifier) ;) }) (else_clause "else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }" else (compound_statement "{\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }" { (expression_statement "DAT_00088f58 = pbVar9 + 8;" (assignment_expression "DAT_00088f58 = pbVar9 + 8" identifier = (binary_expression "pbVar9 + 8" identifier + number_literal)) ;) (expression_statement "local_34 = (byte *)0x0;" (assignment_expression "local_34 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "DAT_00088a1c = pbVar6;" (assignment_expression "DAT_00088a1c = pbVar6" identifier = identifier) ;) }))) (expression_statement "iVar13 = (int)pbVar9 - (int)DAT_00088a1c;" (assignment_expression "iVar13 = (int)pbVar9 - (int)DAT_00088a1c" identifier = (binary_expression "(int)pbVar9 - (int)DAT_00088a1c" (cast_expression "(int)pbVar9" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)DAT_00088a1c" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "DAT_00088a18 = pbVar9;" (assignment_expression "DAT_00088a18 = pbVar9" identifier = identifier) ;) (expression_statement "pcVar7 = (char *)xmalloc(iVar13);" (assignment_expression "pcVar7 = (char *)xmalloc(iVar13)" identifier = (cast_expression "(char *)xmalloc(iVar13)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(iVar13)" identifier (argument_list "(iVar13)" ( identifier ))))) ;) (expression_statement "__s_00 = pcVar7;" (assignment_expression "__s_00 = pcVar7" identifier = identifier) ;) (while_statement "while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }" while (parenthesized_expression "(pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10)" ( (comma_expression "pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10" (assignment_expression "pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7))" identifier = (cast_expression "(char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7))" identifier (argument_list "(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7))" ( identifier , identifier , (binary_expression "__s_00 + (iVar13 - (int)pcVar7)" identifier + (parenthesized_expression "(iVar13 - (int)pcVar7)" ( (binary_expression "iVar13 - (int)pcVar7" identifier - (cast_expression "(int)pcVar7" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ))))) , (binary_expression "__s_00 + (iVar13 - (int)pcVar7) <= pcVar10" (binary_expression "__s_00 + (iVar13 - (int)pcVar7)" identifier + (parenthesized_expression "(iVar13 - (int)pcVar7)" ( (binary_expression "iVar13 - (int)pcVar7" identifier - (cast_expression "(int)pcVar7" ( (type_descriptor "int" primitive_type) ) identifier)) ))) <= identifier)) )) (compound_statement "{\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }" { (expression_statement "__s_00 = (char *)xrealloc(__s_00,iVar13 + 100);" (assignment_expression "__s_00 = (char *)xrealloc(__s_00,iVar13 + 100)" identifier = (cast_expression "(char *)xrealloc(__s_00,iVar13 + 100)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xrealloc(__s_00,iVar13 + 100)" identifier (argument_list "(__s_00,iVar13 + 100)" ( identifier , (binary_expression "iVar13 + 100" identifier + number_literal) ))))) ;) (expression_statement "pcVar7 = __s_00 + iVar13;" (assignment_expression "pcVar7 = __s_00 + iVar13" identifier = (binary_expression "__s_00 + iVar13" identifier + identifier)) ;) (expression_statement "iVar13 = iVar13 + 100;" (assignment_expression "iVar13 = iVar13 + 100" identifier = (binary_expression "iVar13 + 100" identifier + number_literal)) ;) })) (expression_statement "pcVar7[(int)pcVar10] = '\0';" (assignment_expression "pcVar7[(int)pcVar10] = '\0'" (subscript_expression "pcVar7[(int)pcVar10]" identifier [ (cast_expression "(int)pcVar10" ( (type_descriptor "int" primitive_type) ) identifier) ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (if_statement "if (local_34 != (byte *)0x0) {\n        free(local_34);\n      }" if (parenthesized_expression "(local_34 != (byte *)0x0)" ( (binary_expression "local_34 != (byte *)0x0" identifier != (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        free(local_34);\n      }" { (expression_statement "free(local_34);" (call_expression "free(local_34)" identifier (argument_list "(local_34)" ( identifier ))) ;) })) (expression_statement "sVar11 = strlen(__s_00);" (assignment_expression "sVar11 = strlen(__s_00)" identifier = (call_expression "strlen(__s_00)" identifier (argument_list "(__s_00)" ( identifier )))) ;) (expression_statement "FUN_00038130(local_28,sVar11);" (call_expression "FUN_00038130(local_28,sVar11)" identifier (argument_list "(local_28,sVar11)" ( identifier , identifier ))) ;) (expression_statement "FUN_00038310(local_28,__s_00,sVar11);" (call_expression "FUN_00038310(local_28,__s_00,sVar11)" identifier (argument_list "(local_28,__s_00,sVar11)" ( identifier , identifier , identifier ))) ;) (expression_statement "FUN_00028ea0(local_28,DAT_00088f58,0);" (call_expression "FUN_00028ea0(local_28,DAT_00088f58,0)" identifier (argument_list "(local_28,DAT_00088f58,0)" ( identifier , identifier , number_literal ))) ;) (expression_statement "FUN_000381b0(local_28);" (call_expression "FUN_000381b0(local_28)" identifier (argument_list "(local_28)" ( identifier ))) ;) (expression_statement "pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);" (assignment_expression "pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58)" identifier = (cast_expression "(byte *)FUN_00028fd0(&DAT_00088f58)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00028fd0(&DAT_00088f58)" identifier (argument_list "(&DAT_00088f58)" ( (pointer_expression "&DAT_00088f58" & identifier) ))))) ;) (expression_statement "DAT_00088a34 = pbVar6;" (assignment_expression "DAT_00088a34 = pbVar6" identifier = identifier) ;) (expression_statement "free(__s_00);" (call_expression "free(__s_00)" identifier (argument_list "(__s_00)" ( identifier ))) ;) }) (else_clause "else {\n      FUN_00030fc0();\n      pbVar6 = DAT_00088a34;\n    }" else (compound_statement "{\n      FUN_00030fc0();\n      pbVar6 = DAT_00088a34;\n    }" { (expression_statement "FUN_00030fc0();" (call_expression "FUN_00030fc0()" identifier (argument_list "()" ( ))) ;) (expression_statement "pbVar6 = DAT_00088a34;" (assignment_expression "pbVar6 = DAT_00088a34" identifier = identifier) ;) }))) (if_statement "if (pbVar6 <= DAT_00088f58) goto LAB_00036ffa;" if (parenthesized_expression "(pbVar6 <= DAT_00088f58)" ( (binary_expression "pbVar6 <= DAT_00088f58" identifier <= identifier) )) (goto_statement "goto LAB_00036ffa;" goto statement_identifier ;)) (goto_statement "goto LAB_00037044;" goto statement_identifier ;) }))) (expression_statement "iVar13 = FUN_0001c860();" (assignment_expression "iVar13 = FUN_0001c860()" identifier = (call_expression "FUN_0001c860()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar13 != 0) {\n    pbVar9 = (byte *)FUN_0002f7d0(0);\n    if (DAT_00088f58 <= DAT_00088a34) goto LAB_00037376;\n    goto LAB_0003737c;\n  }" if (parenthesized_expression "(iVar13 != 0)" ( (binary_expression "iVar13 != 0" identifier != number_literal) )) (compound_statement "{\n    pbVar9 = (byte *)FUN_0002f7d0(0);\n    if (DAT_00088f58 <= DAT_00088a34) goto LAB_00037376;\n    goto LAB_0003737c;\n  }" { (expression_statement "pbVar9 = (byte *)FUN_0002f7d0(0);" (assignment_expression "pbVar9 = (byte *)FUN_0002f7d0(0)" identifier = (cast_expression "(byte *)FUN_0002f7d0(0)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0002f7d0(0)" identifier (argument_list "(0)" ( number_literal ))))) ;) (if_statement "if (DAT_00088f58 <= DAT_00088a34) goto LAB_00037376;" if (parenthesized_expression "(DAT_00088f58 <= DAT_00088a34)" ( (binary_expression "DAT_00088f58 <= DAT_00088a34" identifier <= identifier) )) (goto_statement "goto LAB_00037376;" goto statement_identifier ;)) (goto_statement "goto LAB_0003737c;" goto statement_identifier ;) })) (expression_statement "DAT_00088f58 = DAT_00088f58 + -1;" (assignment_expression "DAT_00088f58 = DAT_00088f58 + -1" identifier = (binary_expression "DAT_00088f58 + -1" identifier + number_literal)) ;) (expression_statement "bVar4 = FUN_00025220(&local_2c);" (assignment_expression "bVar4 = FUN_00025220(&local_2c)" identifier = (call_expression "FUN_00025220(&local_2c)" identifier (argument_list "(&local_2c)" ( (pointer_expression "&local_2c" & identifier) )))) ;) (expression_statement "pbVar6 = local_2c;" (assignment_expression "pbVar6 = local_2c" identifier = identifier) ;) (expression_statement "iVar13 = 1;" (assignment_expression "iVar13 = 1" identifier = number_literal) ;) (expression_statement "bVar14 = bVar4;" (assignment_expression "bVar14 = bVar4" identifier = identifier) ;) (if_statement "if (bVar4 == 0x22) {\n    bVar14 = DAT_00088f58[1];\n    iVar13 = 2;\n  }" if (parenthesized_expression "(bVar4 == 0x22)" ( (binary_expression "bVar4 == 0x22" identifier == number_literal) )) (compound_statement "{\n    bVar14 = DAT_00088f58[1];\n    iVar13 = 2;\n  }" { (expression_statement "bVar14 = DAT_00088f58[1];" (assignment_expression "bVar14 = DAT_00088f58[1]" identifier = (subscript_expression "DAT_00088f58[1]" identifier [ number_literal ])) ;) (expression_statement "iVar13 = 2;" (assignment_expression "iVar13 = 2" identifier = number_literal) ;) })) (expression_statement "pbVar9 = DAT_00088f58 + iVar13;" (assignment_expression "pbVar9 = DAT_00088f58 + iVar13" identifier = (binary_expression "DAT_00088f58 + iVar13" identifier + identifier)) ;) (if_statement "if (bVar14 == 0x3a) {\n    DAT_00088f48 = FUN_0003d480(local_2c);\n    FUN_00027230((int)(char)bVar4);\n    pbVar6 = DAT_00088f58 + 1;\n    if (DAT_00088f58[1] == 0x20) {\n      pbVar6 = DAT_00088f58 + 2;\n    }\n    goto LAB_00037040;\n  }" if (parenthesized_expression "(bVar14 == 0x3a)" ( (binary_expression "bVar14 == 0x3a" identifier == number_literal) )) (compound_statement "{\n    DAT_00088f48 = FUN_0003d480(local_2c);\n    FUN_00027230((int)(char)bVar4);\n    pbVar6 = DAT_00088f58 + 1;\n    if (DAT_00088f58[1] == 0x20) {\n      pbVar6 = DAT_00088f58 + 2;\n    }\n    goto LAB_00037040;\n  }" { (expression_statement "DAT_00088f48 = FUN_0003d480(local_2c);" (assignment_expression "DAT_00088f48 = FUN_0003d480(local_2c)" identifier = (call_expression "FUN_0003d480(local_2c)" identifier (argument_list "(local_2c)" ( identifier )))) ;) (expression_statement "FUN_00027230((int)(char)bVar4);" (call_expression "FUN_00027230((int)(char)bVar4)" identifier (argument_list "((int)(char)bVar4)" ( (cast_expression "(int)(char)bVar4" ( (type_descriptor "int" primitive_type) ) (cast_expression "(char)bVar4" ( (type_descriptor "char" primitive_type) ) identifier)) ))) ;) (expression_statement "pbVar6 = DAT_00088f58 + 1;" (assignment_expression "pbVar6 = DAT_00088f58 + 1" identifier = (binary_expression "DAT_00088f58 + 1" identifier + number_literal)) ;) (if_statement "if (DAT_00088f58[1] == 0x20) {\n      pbVar6 = DAT_00088f58 + 2;\n    }" if (parenthesized_expression "(DAT_00088f58[1] == 0x20)" ( (binary_expression "DAT_00088f58[1] == 0x20" (subscript_expression "DAT_00088f58[1]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n      pbVar6 = DAT_00088f58 + 2;\n    }" { (expression_statement "pbVar6 = DAT_00088f58 + 2;" (assignment_expression "pbVar6 = DAT_00088f58 + 2" identifier = (binary_expression "DAT_00088f58 + 2" identifier + number_literal)) ;) })) (goto_statement "goto LAB_00037040;" goto statement_identifier ;) })) (if_statement "if (bVar14 == 0x3d) {\n    if (*pbVar9 == 0x3d) goto LAB_00037691;\nLAB_0003746c:\n    uVar12 = 1;\n  }\n  else {\n    if (((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d)) {\n      strncpy(&DAT_00088f60,(char *)local_2c,0x80);\n      puVar3 = PTR__sch_tolower_0007ffcc;\n      DAT_00088fdf = 0;\n      bVar14 = *pbVar6;\n      if (bVar14 == 0) goto LAB_0003726e;\n      do {\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      } while (bVar14 != 0);\n      if (*local_2c == 0x2e) {\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }\n      goto LAB_00037040;\n    }\n    if (pbVar9[1] != 0x3d) goto LAB_0003746c;\nLAB_00037691:\n    uVar12 = 0xffffffff;\n  }" if (parenthesized_expression "(bVar14 == 0x3d)" ( (binary_expression "bVar14 == 0x3d" identifier == number_literal) )) (compound_statement "{\n    if (*pbVar9 == 0x3d) goto LAB_00037691;\nLAB_0003746c:\n    uVar12 = 1;\n  }" { (if_statement "if (*pbVar9 == 0x3d) goto LAB_00037691;" if (parenthesized_expression "(*pbVar9 == 0x3d)" ( (binary_expression "*pbVar9 == 0x3d" (pointer_expression "*pbVar9" * identifier) == number_literal) )) (goto_statement "goto LAB_00037691;" goto statement_identifier ;)) (labeled_statement "LAB_0003746c:\n    uVar12 = 1;" statement_identifier : (expression_statement "uVar12 = 1;" (assignment_expression "uVar12 = 1" identifier = number_literal) ;)) }) (else_clause "else {\n    if (((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d)) {\n      strncpy(&DAT_00088f60,(char *)local_2c,0x80);\n      puVar3 = PTR__sch_tolower_0007ffcc;\n      DAT_00088fdf = 0;\n      bVar14 = *pbVar6;\n      if (bVar14 == 0) goto LAB_0003726e;\n      do {\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      } while (bVar14 != 0);\n      if (*local_2c == 0x2e) {\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }\n      goto LAB_00037040;\n    }\n    if (pbVar9[1] != 0x3d) goto LAB_0003746c;\nLAB_00037691:\n    uVar12 = 0xffffffff;\n  }" else (compound_statement "{\n    if (((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d)) {\n      strncpy(&DAT_00088f60,(char *)local_2c,0x80);\n      puVar3 = PTR__sch_tolower_0007ffcc;\n      DAT_00088fdf = 0;\n      bVar14 = *pbVar6;\n      if (bVar14 == 0) goto LAB_0003726e;\n      do {\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      } while (bVar14 != 0);\n      if (*local_2c == 0x2e) {\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }\n      goto LAB_00037040;\n    }\n    if (pbVar9[1] != 0x3d) goto LAB_0003746c;\nLAB_00037691:\n    uVar12 = 0xffffffff;\n  }" { (if_statement "if (((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d)) {\n      strncpy(&DAT_00088f60,(char *)local_2c,0x80);\n      puVar3 = PTR__sch_tolower_0007ffcc;\n      DAT_00088fdf = 0;\n      bVar14 = *pbVar6;\n      if (bVar14 == 0) goto LAB_0003726e;\n      do {\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      } while (bVar14 != 0);\n      if (*local_2c == 0x2e) {\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }\n      goto LAB_00037040;\n    }" if (parenthesized_expression "(((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d))" ( (binary_expression "((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d)" (parenthesized_expression "((bVar14 != 0x20) && (bVar14 != 9))" ( (binary_expression "(bVar14 != 0x20) && (bVar14 != 9)" (parenthesized_expression "(bVar14 != 0x20)" ( (binary_expression "bVar14 != 0x20" identifier != number_literal) )) && (parenthesized_expression "(bVar14 != 9)" ( (binary_expression "bVar14 != 9" identifier != number_literal) ))) )) || (parenthesized_expression "(*pbVar9 != 0x3d)" ( (binary_expression "*pbVar9 != 0x3d" (pointer_expression "*pbVar9" * identifier) != number_literal) ))) )) (compound_statement "{\n      strncpy(&DAT_00088f60,(char *)local_2c,0x80);\n      puVar3 = PTR__sch_tolower_0007ffcc;\n      DAT_00088fdf = 0;\n      bVar14 = *pbVar6;\n      if (bVar14 == 0) goto LAB_0003726e;\n      do {\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      } while (bVar14 != 0);\n      if (*local_2c == 0x2e) {\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }\n      goto LAB_00037040;\n    }" { (expression_statement "strncpy(&DAT_00088f60,(char *)local_2c,0x80);" (call_expression "strncpy(&DAT_00088f60,(char *)local_2c,0x80)" identifier (argument_list "(&DAT_00088f60,(char *)local_2c,0x80)" ( (pointer_expression "&DAT_00088f60" & identifier) , (cast_expression "(char *)local_2c" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , number_literal ))) ;) (expression_statement "puVar3 = PTR__sch_tolower_0007ffcc;" (assignment_expression "puVar3 = PTR__sch_tolower_0007ffcc" identifier = identifier) ;) (expression_statement "DAT_00088fdf = 0;" (assignment_expression "DAT_00088fdf = 0" identifier = number_literal) ;) (expression_statement "bVar14 = *pbVar6;" (assignment_expression "bVar14 = *pbVar6" identifier = (pointer_expression "*pbVar6" * identifier)) ;) (if_statement "if (bVar14 == 0) goto LAB_0003726e;" if (parenthesized_expression "(bVar14 == 0)" ( (binary_expression "bVar14 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0003726e;" goto statement_identifier ;)) (do_statement "do {\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      } while (bVar14 != 0);" do (compound_statement "{\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      }" { (expression_statement "*pbVar6 = puVar3[bVar14];" (assignment_expression "*pbVar6 = puVar3[bVar14]" (pointer_expression "*pbVar6" * identifier) = (subscript_expression "puVar3[bVar14]" identifier [ identifier ])) ;) (expression_statement "bVar14 = pbVar6[1];" (assignment_expression "bVar14 = pbVar6[1]" identifier = (subscript_expression "pbVar6[1]" identifier [ number_literal ])) ;) (expression_statement "pbVar6 = pbVar6 + 1;" (assignment_expression "pbVar6 = pbVar6 + 1" identifier = (binary_expression "pbVar6 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar14 != 0)" ( (binary_expression "bVar14 != 0" identifier != number_literal) )) ;) (if_statement "if (*local_2c == 0x2e) {\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }" if (parenthesized_expression "(*local_2c == 0x2e)" ( (binary_expression "*local_2c == 0x2e" (pointer_expression "*local_2c" * identifier) == number_literal) )) (compound_statement "{\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }" { (expression_statement "iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);" (assignment_expression "iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1)" identifier = (call_expression "FUN_000283e0(DAT_00088a28,local_2c + 1)" identifier (argument_list "(DAT_00088a28,local_2c + 1)" ( identifier , (binary_expression "local_2c + 1" identifier + number_literal) )))) ;) (if_statement "if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }" if (parenthesized_expression "((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0))" ( (binary_expression "(iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)" (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) || (parenthesized_expression "(pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)" ( (comma_expression "pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0" (assignment_expression "pcVar2 = *(code **)(iVar13 + 4)" identifier = (pointer_expression "*(code **)(iVar13 + 4)" * (cast_expression "(code **)(iVar13 + 4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar13 + 4)" ( (binary_expression "iVar13 + 4" identifier + number_literal) ))))) , (binary_expression "pcVar2 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ))) )) (compound_statement "{\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }" { (if_statement "if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }" if (parenthesized_expression "(DAT_00088a30 != 0)" ( (binary_expression "DAT_00088a30 != 0" identifier != number_literal) )) (compound_statement "{\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }" { (expression_statement "FUN_000307b0(1,0,0,0);" (call_expression "FUN_000307b0(1,0,0,0)" identifier (argument_list "(1,0,0,0)" ( number_literal , number_literal , number_literal , number_literal ))) ;) (expression_statement "DAT_00088a30 = 0;" (assignment_expression "DAT_00088a30 = 0" identifier = number_literal) ;) (if_statement "if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }" if (parenthesized_expression "(DAT_00088f48 != 0)" ( (binary_expression "DAT_00088f48 != 0" identifier != number_literal) )) (compound_statement "{\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }" { (expression_statement "FUN_0003e160(DAT_00088f48,DAT_00088e84);" (call_expression "FUN_0003e160(DAT_00088f48,DAT_00088e84)" identifier (argument_list "(DAT_00088f48,DAT_00088e84)" ( identifier , identifier ))) ;) (expression_statement "uVar20 = FUN_00027cf0();" (assignment_expression "uVar20 = FUN_00027cf0()" identifier = (call_expression "FUN_00027cf0()" identifier (argument_list "()" ( )))) ;) (expression_statement "FUN_0003ae10(DAT_00088f48,uVar20);" (call_expression "FUN_0003ae10(DAT_00088f48,uVar20)" identifier (argument_list "(DAT_00088f48,uVar20)" ( identifier , identifier ))) ;) })) })) (expression_statement "pbVar9 = DAT_00088f58;" (assignment_expression "pbVar9 = DAT_00088f58" identifier = identifier) ;) (expression_statement "FUN_00027230((int)(char)bVar4);" (call_expression "FUN_00027230((int)(char)bVar4)" identifier (argument_list "((int)(char)bVar4)" ( (cast_expression "(int)(char)bVar4" ( (type_descriptor "int" primitive_type) ) (cast_expression "(char)bVar4" ( (type_descriptor "char" primitive_type) ) identifier)) ))) ;) (expression_statement "FUN_00030fc0();" (call_expression "FUN_00030fc0()" identifier (argument_list "()" ( ))) ;) (expression_statement "bVar14 = DAT_00088f58[-1];" (assignment_expression "bVar14 = DAT_00088f58[-1]" identifier = (subscript_expression "DAT_00088f58[-1]" identifier [ number_literal ])) ;) (expression_statement "pbVar6 = DAT_00088f58 + -1;" (assignment_expression "pbVar6 = DAT_00088f58 + -1" identifier = (binary_expression "DAT_00088f58 + -1" identifier + number_literal)) ;) (expression_statement "DAT_00088f58 = DAT_00088f58 + -1;" (assignment_expression "DAT_00088f58 = DAT_00088f58 + -1" identifier = (binary_expression "DAT_00088f58 + -1" identifier + number_literal)) ;) (expression_statement "*pbVar6 = 0;" (assignment_expression "*pbVar6 = 0" (pointer_expression "*pbVar6" * identifier) = number_literal) ;) (if_statement "if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }" if (parenthesized_expression "((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))" ( (binary_expression "(DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)" (parenthesized_expression "(DAT_00088f1c == 0)" ( (binary_expression "DAT_00088f1c == 0" identifier == number_literal) )) || (parenthesized_expression "(iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)" ( (comma_expression "iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0" (assignment_expression "iVar13 = FUN_0002fa10()" identifier = (call_expression "FUN_0002fa10()" identifier (argument_list "()" ( )))) , (comma_expression "pbVar6 = DAT_00088f58, iVar13 == 0" (assignment_expression "pbVar6 = DAT_00088f58" identifier = identifier) , (binary_expression "iVar13 == 0" identifier == number_literal))) ))) )) (compound_statement "{\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }" { (expression_statement "pbVar6 = local_2c;" (assignment_expression "pbVar6 = local_2c" identifier = identifier) ;) (expression_statement "*pbVar9 = 0;" (assignment_expression "*pbVar9 = 0" (pointer_expression "*pbVar9" * identifier) = number_literal) ;) (expression_statement "uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);" (assignment_expression "uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5)" identifier = (call_expression "dcgettext(0,"unknown pseudo-op: `%s\'",5)" identifier (argument_list "(0,"unknown pseudo-op: `%s\'",5)" ( number_literal , (string_literal ""unknown pseudo-op: `%s\'"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "FUN_0002ec90(uVar12,pbVar6);" (call_expression "FUN_0002ec90(uVar12,pbVar6)" identifier (argument_list "(uVar12,pbVar6)" ( identifier , identifier ))) ;) (expression_statement "pbVar6 = DAT_00088f58 + 1;" (assignment_expression "pbVar6 = DAT_00088f58 + 1" identifier = (binary_expression "DAT_00088f58 + 1" identifier + number_literal)) ;) (expression_statement "*DAT_00088f58 = bVar14;" (assignment_expression "*DAT_00088f58 = bVar14" (pointer_expression "*DAT_00088f58" * identifier) = identifier) ;) (expression_statement "DAT_00088f58 = pbVar6;" (assignment_expression "DAT_00088f58 = pbVar6" identifier = identifier) ;) (expression_statement "pbVar6 = DAT_00088f58;" (assignment_expression "pbVar6 = DAT_00088f58" identifier = identifier) ;) })) }) (else_clause "else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }" else (compound_statement "{\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }" { (if_statement "if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }" if (parenthesized_expression "((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0))))))" ( (binary_expression "(DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))" (parenthesized_expression "(DAT_00088a30 != 0)" ( (binary_expression "DAT_00088a30 != 0" identifier != number_literal) )) && (parenthesized_expression "((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))" ( (parenthesized_expression "(((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0))))" ( (binary_expression "((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))" (parenthesized_expression "((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))" ( (binary_expression "(pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1)" (parenthesized_expression "(pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910))" ( (binary_expression "pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)" (binary_expression "pcVar2 != FUN_00034160" identifier != identifier) && (parenthesized_expression "(pcVar2 != FUN_00034910)" ( (binary_expression "pcVar2 != FUN_00034910" identifier != identifier) ))) )) || (parenthesized_expression "(*(int *)(iVar13 + 8) != 1)" ( (binary_expression "*(int *)(iVar13 + 8) != 1" (pointer_expression "*(int *)(iVar13 + 8)" * (cast_expression "(int *)(iVar13 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar13 + 8)" ( (binary_expression "iVar13 + 8" identifier + number_literal) )))) != number_literal) ))) )) && (parenthesized_expression "(((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))" ( (parenthesized_expression "((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0))" ( (binary_expression "(((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)" (binary_expression "(((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60" (parenthesized_expression "(((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c)" ( (binary_expression "((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c" (parenthesized_expression "((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94)" ( (binary_expression "(((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94" (parenthesized_expression "(((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4)" ( (binary_expression "((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4" (parenthesized_expression "((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4)" ( (binary_expression "(pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4" (parenthesized_expression "(pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4)" ( (binary_expression "pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4" (binary_expression "pcVar2 != (code *)PTR_FUN_0007ff74" identifier != (cast_expression "(code *)PTR_FUN_0007ff74" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) && (binary_expression "pcVar2 != (code *)PTR_FUN_0007fff4" identifier != (cast_expression "(code *)PTR_FUN_0007fff4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) )) && (binary_expression "pcVar2 != (code *)PTR_FUN_0007ffd4" identifier != (cast_expression "(code *)PTR_FUN_0007ffd4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) )) && (binary_expression "pcVar2 != (code *)PTR_FUN_0007ffc4" identifier != (cast_expression "(code *)PTR_FUN_0007ffc4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) )) && (binary_expression "pcVar2 != (code *)PTR_FUN_0007ff94" identifier != (cast_expression "(code *)PTR_FUN_0007ff94" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) )) && (binary_expression "pcVar2 != (code *)PTR_FUN_0007ff5c" identifier != (cast_expression "(code *)PTR_FUN_0007ff5c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) )) && (binary_expression "pcVar2 != FUN_00035b60" identifier != identifier)) && (parenthesized_expression "(pcVar2 != thunk_FUN_00030fc0)" ( (binary_expression "pcVar2 != thunk_FUN_00030fc0" identifier != identifier) ))) )) ))) )) ))) )) (compound_statement "{\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }" { (expression_statement "FUN_000307b0(1,0,0,0);" (call_expression "FUN_000307b0(1,0,0,0)" identifier (argument_list "(1,0,0,0)" ( number_literal , number_literal , number_literal , number_literal ))) ;) (expression_statement "DAT_00088a30 = 0;" (assignment_expression "DAT_00088a30 = 0" identifier = number_literal) ;) (if_statement "if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }" if (parenthesized_expression "(DAT_00088f48 != 0)" ( (binary_expression "DAT_00088f48 != 0" identifier != number_literal) )) (compound_statement "{\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }" { (expression_statement "FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);" (call_expression "FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX)" identifier (argument_list "(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX)" ( identifier , identifier , identifier , identifier ))) ;) (expression_statement "uVar20 = FUN_00027cf0();" (assignment_expression "uVar20 = FUN_00027cf0()" identifier = (call_expression "FUN_00027cf0()" identifier (argument_list "()" ( )))) ;) (expression_statement "FUN_0003ae10(DAT_00088f48,uVar20);" (call_expression "FUN_0003ae10(DAT_00088f48,uVar20)" identifier (argument_list "(DAT_00088f48,uVar20)" ( identifier , identifier ))) ;) })) })) (expression_statement "cVar5 = FUN_00027230((int)(char)bVar4);" (assignment_expression "cVar5 = FUN_00027230((int)(char)bVar4)" identifier = (call_expression "FUN_00027230((int)(char)bVar4)" identifier (argument_list "((int)(char)bVar4)" ( (cast_expression "(int)(char)bVar4" ( (type_descriptor "int" primitive_type) ) (cast_expression "(char)bVar4" ( (type_descriptor "char" primitive_type) ) identifier)) )))) ;) (if_statement "if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }" if (parenthesized_expression "((cVar5 == ' ') || (cVar5 == '\t'))" ( (binary_expression "(cVar5 == ' ') || (cVar5 == '\t')" (parenthesized_expression "(cVar5 == ' ')" ( (binary_expression "cVar5 == ' '" identifier == (char_literal "' '" ' character ')) )) || (parenthesized_expression "(cVar5 == '\t')" ( (binary_expression "cVar5 == '\t'" identifier == (char_literal "'\t'" ' escape_sequence ')) ))) )) (compound_statement "{\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }" { (expression_statement "DAT_00088f58 = DAT_00088f58 + 1;" (assignment_expression "DAT_00088f58 = DAT_00088f58 + 1" identifier = (binary_expression "DAT_00088f58 + 1" identifier + number_literal)) ;) })) (expression_statement "(**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));" (call_expression "(**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8))" (parenthesized_expression "(**(code **)(iVar13 + 4))" ( (pointer_expression "**(code **)(iVar13 + 4)" * (pointer_expression "*(code **)(iVar13 + 4)" * (cast_expression "(code **)(iVar13 + 4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar13 + 4)" ( (binary_expression "iVar13 + 4" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar13 + 8))" ( (pointer_expression "*(undefined4 *)(iVar13 + 8)" * (cast_expression "(undefined4 *)(iVar13 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar13 + 8)" ( (binary_expression "iVar13 + 8" identifier + number_literal) )))) ))) ;) (expression_statement "pbVar6 = DAT_00088f58;" (assignment_expression "pbVar6 = DAT_00088f58" identifier = identifier) ;) (if_statement "if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;" if (parenthesized_expression "(*(code **)(iVar13 + 4) == FUN_000300b0)" ( (binary_expression "*(code **)(iVar13 + 4) == FUN_000300b0" (pointer_expression "*(code **)(iVar13 + 4)" * (cast_expression "(code **)(iVar13 + 4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar13 + 4)" ( (binary_expression "iVar13 + 4" identifier + number_literal) )))) == identifier) )) (goto_statement "goto LAB_00037649;" goto statement_identifier ;)) }))) }) (else_clause "else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }" else (compound_statement "{\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }" { (labeled_statement "LAB_0003726e:\n        FUN_00027230((int)(char)bVar4);" statement_identifier : (expression_statement "FUN_00027230((int)(char)bVar4);" (call_expression "FUN_00027230((int)(char)bVar4)" identifier (argument_list "((int)(char)bVar4)" ( (cast_expression "(int)(char)bVar4" ( (type_descriptor "int" primitive_type) ) (cast_expression "(char)bVar4" ( (type_descriptor "char" primitive_type) ) identifier)) ))) ;)) (expression_statement "DAT_00088f58 = (byte *)FUN_0002f7d0(0);" (assignment_expression "DAT_00088f58 = (byte *)FUN_0002f7d0(0)" identifier = (cast_expression "(byte *)FUN_0002f7d0(0)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0002f7d0(0)" identifier (argument_list "(0)" ( number_literal ))))) ;) (expression_statement "bVar14 = *DAT_00088f58;" (assignment_expression "bVar14 = *DAT_00088f58" identifier = (pointer_expression "*DAT_00088f58" * identifier)) ;) (expression_statement "*DAT_00088f58 = 0;" (assignment_expression "*DAT_00088f58 = 0" (pointer_expression "*DAT_00088f58" * identifier) = number_literal) ;) (expression_statement "FUN_00036f40();" (call_expression "FUN_00036f40()" identifier (argument_list "()" ( ))) ;) (if_statement "if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }" if (parenthesized_expression "((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))" ( (binary_expression "(DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)" (parenthesized_expression "(DAT_00088f1c == 0)" ( (binary_expression "DAT_00088f1c == 0" identifier == number_literal) )) || (parenthesized_expression "(iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)" ( (comma_expression "iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0" (assignment_expression "iVar13 = FUN_0002fa10()" identifier = (call_expression "FUN_0002fa10()" identifier (argument_list "()" ( )))) , (comma_expression "pbVar6 = DAT_00088f58, iVar13 == 0" (assignment_expression "pbVar6 = DAT_00088f58" identifier = identifier) , (binary_expression "iVar13 == 0" identifier == number_literal))) ))) )) (compound_statement "{\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }" { (if_statement "if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }" if (parenthesized_expression "(DAT_00088a30 != 0)" ( (binary_expression "DAT_00088a30 != 0" identifier != number_literal) )) (compound_statement "{\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }" { (expression_statement "FUN_000307b0(1,0,0,0);" (call_expression "FUN_000307b0(1,0,0,0)" identifier (argument_list "(1,0,0,0)" ( number_literal , number_literal , number_literal , number_literal ))) ;) (expression_statement "DAT_00088a30 = 0;" (assignment_expression "DAT_00088a30 = 0" identifier = number_literal) ;) (if_statement "if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }" if (parenthesized_expression "(DAT_00088f48 != 0)" ( (binary_expression "DAT_00088f48 != 0" identifier != number_literal) )) (compound_statement "{\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }" { (expression_statement "FUN_0003e160(DAT_00088f48,DAT_00088e84);" (call_expression "FUN_0003e160(DAT_00088f48,DAT_00088e84)" identifier (argument_list "(DAT_00088f48,DAT_00088e84)" ( identifier , identifier ))) ;) (expression_statement "uVar20 = FUN_00027cf0();" (assignment_expression "uVar20 = FUN_00027cf0()" identifier = (call_expression "FUN_00027cf0()" identifier (argument_list "()" ( )))) ;) (expression_statement "FUN_0003ae10(DAT_00088f48,uVar20);" (call_expression "FUN_0003ae10(DAT_00088f48,uVar20)" identifier (argument_list "(DAT_00088f48,uVar20)" ( identifier , identifier ))) ;) })) })) (expression_statement "FUN_00048cd0(local_2c);" (call_expression "FUN_00048cd0(local_2c)" identifier (argument_list "(local_2c)" ( identifier ))) ;) (if_statement "if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            FUN_0002ed30(uVar12);\n          }" if (parenthesized_expression "(DAT_00088f58 == (byte *)0x0)" ( (binary_expression "DAT_00088f58 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            FUN_0002ed30(uVar12);\n          }" { (expression_statement "uVar12 = dcgettext(0,"unable to continue with assembly.",5);" (assignment_expression "uVar12 = dcgettext(0,"unable to continue with assembly.",5)" identifier = (call_expression "dcgettext(0,"unable to continue with assembly.",5)" identifier (argument_list "(0,"unable to continue with assembly.",5)" ( number_literal , (string_literal ""unable to continue with assembly."" " string_content ") , number_literal )))) ;) comment (expression_statement "FUN_0002ed30(uVar12);" (call_expression "FUN_0002ed30(uVar12)" identifier (argument_list "(uVar12)" ( identifier ))) ;) })) (expression_statement "pbVar6 = DAT_00088f58 + 1;" (assignment_expression "pbVar6 = DAT_00088f58 + 1" identifier = (binary_expression "DAT_00088f58 + 1" identifier + number_literal)) ;) (expression_statement "*DAT_00088f58 = bVar14;" (assignment_expression "*DAT_00088f58 = bVar14" (pointer_expression "*DAT_00088f58" * identifier) = identifier) ;) (expression_statement "DAT_00088f58 = pbVar6;" (assignment_expression "DAT_00088f58 = pbVar6" identifier = identifier) ;) (expression_statement "pbVar6 = DAT_00088f58;" (assignment_expression "pbVar6 = DAT_00088f58" identifier = identifier) ;) })) }))) (goto_statement "goto LAB_00037040;" goto statement_identifier ;) })) (if_statement "if (pbVar9[1] != 0x3d) goto LAB_0003746c;" if (parenthesized_expression "(pbVar9[1] != 0x3d)" ( (binary_expression "pbVar9[1] != 0x3d" (subscript_expression "pbVar9[1]" identifier [ number_literal ]) != number_literal) )) (goto_statement "goto LAB_0003746c;" goto statement_identifier ;)) (labeled_statement "LAB_00037691:\n    uVar12 = 0xffffffff;" statement_identifier : (expression_statement "uVar12 = 0xffffffff;" (assignment_expression "uVar12 = 0xffffffff" identifier = number_literal) ;)) }))) (expression_statement "FUN_00036d70(local_2c,uVar12);" (call_expression "FUN_00036d70(local_2c,uVar12)" identifier (argument_list "(local_2c,uVar12)" ( identifier , identifier ))) ;) (expression_statement "FUN_00031210();" (call_expression "FUN_00031210()" identifier (argument_list "()" ( ))) ;) (expression_statement "pbVar6 = DAT_00088f58;" (assignment_expression "pbVar6 = DAT_00088f58" identifier = identifier) ;) (goto_statement "goto LAB_00037040;" goto statement_identifier ;) (labeled_statement "LAB_00037439:\n  iVar13 = FUN_0001c860();" statement_identifier : (expression_statement "iVar13 = FUN_0001c860();" (assignment_expression "iVar13 = FUN_0001c860()" identifier = (call_expression "FUN_0001c860()" identifier (argument_list "()" ( )))) ;)) (if_statement "if (iVar13 == 0) {\n    DAT_00088f58 = DAT_00088f58 + -1;\n    FUN_00031210();\n    pbVar6 = DAT_00088f58;\n    goto LAB_00037040;\n  }" if (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) (compound_statement "{\n    DAT_00088f58 = DAT_00088f58 + -1;\n    FUN_00031210();\n    pbVar6 = DAT_00088f58;\n    goto LAB_00037040;\n  }" { (expression_statement "DAT_00088f58 = DAT_00088f58 + -1;" (assignment_expression "DAT_00088f58 = DAT_00088f58 + -1" identifier = (binary_expression "DAT_00088f58 + -1" identifier + number_literal)) ;) (expression_statement "FUN_00031210();" (call_expression "FUN_00031210()" identifier (argument_list "()" ( ))) ;) (expression_statement "pbVar6 = DAT_00088f58;" (assignment_expression "pbVar6 = DAT_00088f58" identifier = identifier) ;) (goto_statement "goto LAB_00037040;" goto statement_identifier ;) })) (labeled_statement "LAB_00037509:\n  pbVar9 = (byte *)FUN_0002f7d0(0);" statement_identifier : (expression_statement "pbVar9 = (byte *)FUN_0002f7d0(0);" (assignment_expression "pbVar9 = (byte *)FUN_0002f7d0(0)" identifier = (cast_expression "(byte *)FUN_0002f7d0(0)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0002f7d0(0)" identifier (argument_list "(0)" ( number_literal ))))) ;)) (if_statement "if (DAT_00088f58 <= DAT_00088a34) {\nLAB_00037376:\n    pbVar6 = DAT_00088a34;\n    if (DAT_00088a34 <= pbVar9) goto LAB_00037040;\n  }" if (parenthesized_expression "(DAT_00088f58 <= DAT_00088a34)" ( (binary_expression "DAT_00088f58 <= DAT_00088a34" identifier <= identifier) )) (compound_statement "{\nLAB_00037376:\n    pbVar6 = DAT_00088a34;\n    if (DAT_00088a34 <= pbVar9) goto LAB_00037040;\n  }" { (labeled_statement "LAB_00037376:\n    pbVar6 = DAT_00088a34;" statement_identifier : (expression_statement "pbVar6 = DAT_00088a34;" (assignment_expression "pbVar6 = DAT_00088a34" identifier = identifier) ;)) (if_statement "if (DAT_00088a34 <= pbVar9) goto LAB_00037040;" if (parenthesized_expression "(DAT_00088a34 <= pbVar9)" ( (binary_expression "DAT_00088a34 <= pbVar9" identifier <= identifier) )) (goto_statement "goto LAB_00037040;" goto statement_identifier ;)) })) (labeled_statement "LAB_0003737c:\n  pbVar6 = pbVar9 + 1;" statement_identifier : (expression_statement "pbVar6 = pbVar9 + 1;" (assignment_expression "pbVar6 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;)) (goto_statement "goto LAB_00037040;" goto statement_identifier ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.ax replaced with injection: get_pc_thunk_ax */\n/* WARNING: Unknown calling convention */\n\nvoid read_a_source_file(char *name)\n\n{\n  size_t sVar1;\n  byte bVar2;\n  byte bVar3;\n  byte bVar4;\n  code *pcVar5;\n  undefined *puVar6;\n  char c;\n  char cVar7;\n  byte *pbVar8;\n  char *pcVar9;\n  byte *pbVar10;\n  void *pvVar11;\n  char *pcVar12;\n  char *pcVar13;\n  size_t sVar14;\n  int iVar15;\n  uint uVar16;\n  size_t sVar17;\n  bool bVar18;\n  bool bVar19;\n  byte bVar20;\n  addressT aVar21;\n  char *local_34;\n  char *s;\n  sb sbuf;\n  \n  bVar20 = 0;\n  found_comment = 0;\n  buffer = input_scrub_new_file(name);\n  listing_file(name);\n  listing_newline((char *)0x0);\n  register_dependency(name);\n  if (debug_type == DEBUG_STABS) {\n    stabs_generate_asm_file();\n  }\nLAB_00036ffa:\n  do {\n    buffer_limit = input_scrub_next_buffer(&input_line_pointer);\n    if (buffer_limit == (char *)0x0) {\nLAB_00037649:\n      symbol_set_value_now((symbolS *)PTR_dot_symbol_0007ff6c);\n      input_scrub_close();\n      if ((warn_comment != 0) && (found_comment != 0)) {\n        as_warn_where(found_comment_file,found_comment,"first comment found here");\n        return;\n      }\n      return;\n    }\n    read_a_source_file::lexical_block_7::last_eol = (char *)0x0;\n    pbVar8 = (byte *)input_line_pointer;\nLAB_00037040:\n    input_line_pointer = (char *)pbVar8;\n  } while (buffer_limit <= input_line_pointer);\nLAB_00037044:\n  cVar7 = is_end_of_line[(byte)input_line_pointer[-1]];\n  if (cVar7 == '\0') {\n    if (listing != 0) {\nLAB_00037065:\n      if (((listing & 0x40U) == 0) || (macro_nest < 1)) {\n        listing_newline((char *)0x0);\n      }\n      else {\n        s = _find_end_of_line(input_line_pointer,0,0,0);\n        if (read_a_source_file::lexical_block_7::last_eol != s) {\n          sVar14 = (int)s - (int)input_line_pointer;\n          read_a_source_file::lexical_block_7::last_eol = s;\n          pcVar9 = (char *)xmalloc(sVar14 + macro_nest + 2);\n          iVar15 = macro_nest;\n          memset(pcVar9,0x3e,macro_nest);\n          pcVar9[iVar15] = ' ';\n          memcpy(pcVar9 + macro_nest + 1,input_line_pointer,sVar14);\n          pcVar9[macro_nest + sVar14 + 1] = '\0';\n          listing_newline(pcVar9);\n        }\n      }\n      if (cVar7 != '\0') goto LAB_00037094;\n    }\n  }\n  else {\n    symbol_set_value_now((symbolS *)PTR_dot_symbol_0007ff6c);\n    if (input_line_pointer[-1] == '\n') {\n      bump_line_counters();\n    }\n    if (listing != 0) goto LAB_00037065;\nLAB_00037094:\n    line_label = (symbolS *)0x0;\n  }\n  do {\n    puVar6 = PTR__sch_istable_0007ff84;\n    pbVar8 = (byte *)input_line_pointer + 1;\n    bVar2 = *input_line_pointer;\n    uVar16 = (uint)bVar2;\n    input_line_pointer = (char *)pbVar8;\n    if (0x17 < (byte)(uVar16 - 9)) {\n      bVar3 = lex_type[uVar16];\n      goto joined_r0x000370d3;\n    }\n  } while ((0x800009U >> (uVar16 - 9 & 0x1f) & 1) != 0);\n  bVar3 = lex_type[uVar16];\njoined_r0x000370d3:\n  if (((bVar3 & 2) == 0) && (bVar2 != 0x22)) {\n    if (is_end_of_line[uVar16] != '\0') goto LAB_00037040;\n    if ((PTR__sch_istable_0007ff84[uVar16 * 2] & 4) != 0) {\n      iVar15 = ignore_input();\n      if (iVar15 != 0) goto LAB_00037509;\n      iVar15 = (char)bVar2 + -0x30;\n      bVar3 = *input_line_pointer;\n      bVar4 = puVar6[(uint)bVar3 * 2];\n      pbVar10 = (byte *)input_line_pointer;\n      while ((bVar4 & 4) != 0) {\n        pbVar10 = pbVar10 + 1;\n        iVar15 = (char)bVar3 + -0x30 + iVar15 * 10;\n        bVar3 = *pbVar10;\n        bVar4 = puVar6[(uint)bVar3 * 2];\n      }\n      input_line_pointer = (char *)(pbVar10 + 1);\n      if (*pbVar10 == 0x3a) {\n        fb_label_instance_inc(iVar15);\n        pcVar9 = fb_label_name(iVar15,0);\n        colon(pcVar9);\n        pbVar8 = (byte *)input_line_pointer;\n        goto LAB_00037040;\n      }\n    }\n    input_line_pointer = (char *)pbVar8;\n    if (bVar2 == 0) goto LAB_00037439;\n    pcVar9 = strchr(PTR_line_comment_chars_0007ffa0,(int)(char)bVar2);\n    bVar18 = false;\n    bVar19 = pcVar9 == (char *)0x0;\n    if (bVar19) goto LAB_00037439;\n    s = input_line_pointer;\n    iVar15 = 4;\n    pbVar8 = (byte *)input_line_pointer;\n    pbVar10 = &DAT_0005e3fa;\n    do {\n      if (iVar15 == 0) break;\n      iVar15 = iVar15 + -1;\n      bVar18 = *pbVar8 < *pbVar10;\n      bVar19 = *pbVar8 == *pbVar10;\n      pbVar8 = pbVar8 + (uint)bVar20 * -2 + 1;\n      pbVar10 = pbVar10 + (uint)bVar20 * -2 + 1;\n    } while (bVar19);\n    if ((!bVar18 && !bVar19) == bVar18) {\n      bump_line_counters();\n      pcVar9 = s + 4;\n      s = pcVar9;\n      pcVar12 = strstr(pcVar9,"#NO_APP\n");\n      if (pcVar12 == (char *)0x0) {\n        sVar14 = (int)buffer_limit - (int)pcVar9;\n        local_34 = (char *)xmalloc(sVar14 + 1);\n        memcpy(local_34,s,sVar14);\n        while (pcVar12 = input_scrub_next_buffer(&buffer), pcVar9 = buffer, pcVar12 != (char *)0x0)\n        {\n          input_line_pointer = buffer;\n          buffer_limit = pcVar12;\n          pcVar13 = strstr(buffer,"#NO_APP\n");\n          if (pcVar13 != (char *)0x0) {\n            sVar17 = (int)pcVar13 - (int)pcVar9;\n            sVar1 = sVar14 + sVar17;\n            local_34 = (char *)xrealloc(local_34,sVar1);\n            memcpy(local_34 + sVar14,buffer,sVar17);\n            input_line_pointer = pcVar13 + 8;\n            sVar14 = sVar1;\n            goto LAB_00037b57;\n          }\n          sVar17 = (int)pcVar12 - (int)pcVar9;\n          sVar1 = sVar14 + sVar17;\n          local_34 = (char *)xrealloc(local_34,sVar1);\n          memcpy(local_34 + sVar14,buffer,sVar17);\n          sVar14 = sVar1;\n        }\n        input_line_pointer = (char *)0x0;\nLAB_00037b57:\n        s = local_34;\n        pcVar12 = local_34 + sVar14;\n        scrub_string = local_34;\n      }\n      else {\n        input_line_pointer = pcVar12 + 8;\n        local_34 = (char *)0x0;\n        scrub_string = pcVar9;\n      }\n      iVar15 = (int)pcVar12 - (int)scrub_string;\n      scrub_string_end = pcVar12;\n      pcVar9 = (char *)xmalloc(iVar15);\n      pcVar12 = pcVar9;\n      while (pcVar13 = (char *)do_scrub_chars(scrub_from_string,pcVar9,\n                                              (size_t)(pcVar12 + (iVar15 - (int)pcVar9))),\n            pcVar12 + (iVar15 - (int)pcVar9) <= pcVar13) {\n        pcVar12 = (char *)xrealloc(pcVar12,iVar15 + 100);\n        pcVar9 = pcVar12 + iVar15;\n        iVar15 = iVar15 + 100;\n      }\n      pcVar9[(int)pcVar13] = '\0';\n      if (local_34 != (char *)0x0) {\n        free(local_34);\n      }\n      sVar14 = strlen(pcVar12);\n      sb_build(&sbuf,sVar14);\n      sb_add_buffer(&sbuf,pcVar12,sVar14);\n      input_scrub_include_sb(&sbuf,input_line_pointer,0);\n      sb_kill(&sbuf);\n      pcVar9 = input_scrub_next_buffer(&input_line_pointer);\n      buffer_limit = pcVar9;\n      free(pcVar12);\n    }\n    else {\n      ignore_rest_of_line();\n      pcVar9 = buffer_limit;\n    }\n    if (pcVar9 <= input_line_pointer) goto LAB_00036ffa;\n    goto LAB_00037044;\n  }\n  iVar15 = ignore_input();\n  if (iVar15 != 0) {\n    pcVar9 = _find_end_of_line(input_line_pointer + -1,0,0,0);\n    if (input_line_pointer <= buffer_limit) goto LAB_00037376;\n    goto LAB_0003737c;\n  }\n  input_line_pointer = input_line_pointer + -1;\n  c = get_symbol_name(&s);\n  pbVar8 = (byte *)s;\n  iVar15 = 1;\n  cVar7 = c;\n  if (c == '\"') {\n    cVar7 = input_line_pointer[1];\n    iVar15 = 2;\n  }\n  pcVar9 = input_line_pointer + iVar15;\n  if (cVar7 == ':') {\n    line_label = colon(s);\n    restore_line_pointer(c);\n    pbVar8 = (byte *)(input_line_pointer + 1);\n    if (input_line_pointer[1] == ' ') {\n      pbVar8 = (byte *)(input_line_pointer + 2);\n    }\n    goto LAB_00037040;\n  }\n  if (cVar7 == '=') {\n    if (*pcVar9 == '=') goto LAB_00037691;\nLAB_0003746c:\n    iVar15 = 1;\n  }\n  else {\n    if (((cVar7 != ' ') && (cVar7 != '\t')) || (*pcVar9 != '=')) {\n      strncpy(original_case_string,s,0x80);\n      puVar6 = PTR__sch_tolower_0007ffcc;\n      original_case_string[0x7f] = 0;\n      bVar2 = *pbVar8;\n      if (bVar2 == 0) goto LAB_0003726e;\n      do {\n        *pbVar8 = puVar6[bVar2];\n        bVar2 = pbVar8[1];\n        pbVar8 = pbVar8 + 1;\n      } while (bVar2 != 0);\n      if (*s == '.') {\n        pvVar11 = hash_find(po_hash,s + 1);\n        if ((pvVar11 == (void *)0x0) ||\n           (pcVar5 = *(code **)((int)pvVar11 + 4), pcVar5 == (code *)0x0)) {\n          if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          pcVar12 = input_line_pointer;\n          restore_line_pointer(c);\n          ignore_rest_of_line();\n          cVar7 = input_line_pointer[-1];\n          pcVar9 = input_line_pointer + -1;\n          input_line_pointer = input_line_pointer + -1;\n          *pcVar9 = '\0';\n          if ((macro_defined == 0) ||\n             (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {\n            pcVar9 = s;\n            *pcVar12 = '\0';\n            pcVar12 = (char *)dcgettext(0,"unknown pseudo-op: `%s\'");\n            as_bad(pcVar12,pcVar9);\n            pcVar9 = input_line_pointer + 1;\n            *input_line_pointer = cVar7;\n            input_line_pointer = pcVar9;\n            pbVar8 = (byte *)input_line_pointer;\n          }\n        }\n        else {\n          if ((mri_pending_align != 0) &&\n             ((((pcVar5 != s_space && (pcVar5 != cons)) || (*(int *)((int)pvVar11 + 8) != 1)) &&\n              (((((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)\n                && pcVar5 != (code *)PTR_s_endif_0007ff5c) && pcVar5 != s_globl &&\n               (pcVar5 != s_ignore)))))) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          cVar7 = restore_line_pointer(c);\n          if ((cVar7 == ' ') || (cVar7 == '\t')) {\n            input_line_pointer = input_line_pointer + 1;\n          }\n          (**(code **)((int)pvVar11 + 4))(*(undefined4 *)((int)pvVar11 + 8));\n          pbVar8 = (byte *)input_line_pointer;\n          if (*(code **)((int)pvVar11 + 4) == s_end) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        restore_line_pointer(c);\n        input_line_pointer = _find_end_of_line(input_line_pointer,0,1,0);\n        cVar7 = *input_line_pointer;\n        *input_line_pointer = '\0';\n        generate_lineno_debug();\n        if ((macro_defined == 0) ||\n           (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {\n          if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          md_assemble(s);\n          if (input_line_pointer == (char *)0x0) {\n            pcVar9 = (char *)dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            as_fatal(pcVar9);\n          }\n          pcVar9 = input_line_pointer + 1;\n          *input_line_pointer = cVar7;\n          input_line_pointer = pcVar9;\n          pbVar8 = (byte *)input_line_pointer;\n        }\n      }\n      goto LAB_00037040;\n    }\n    if (pcVar9[1] != '=') goto LAB_0003746c;\nLAB_00037691:\n    iVar15 = -1;\n  }\n  equals(s,iVar15);\n  demand_empty_rest_of_line();\n  pbVar8 = (byte *)input_line_pointer;\n  goto LAB_00037040;\nLAB_00037439:\n  iVar15 = ignore_input();\n  if (iVar15 == 0) {\n    input_line_pointer = input_line_pointer + -1;\n    demand_empty_rest_of_line();\n    pbVar8 = (byte *)input_line_pointer;\n    goto LAB_00037040;\n  }\nLAB_00037509:\n  pcVar9 = _find_end_of_line(input_line_pointer + -1,0,0,0);\n  if (input_line_pointer <= buffer_limit) {\nLAB_00037376:\n    pbVar8 = (byte *)buffer_limit;\n    if (buffer_limit <= pcVar9) goto LAB_00037040;\n  }\nLAB_0003737c:\n  pbVar8 = (byte *)(pcVar9 + 1);\n  goto LAB_00037040;\n}\n\n" comment comment (function_definition "void read_a_source_file(char *name)\n\n{\n  size_t sVar1;\n  byte bVar2;\n  byte bVar3;\n  byte bVar4;\n  code *pcVar5;\n  undefined *puVar6;\n  char c;\n  char cVar7;\n  byte *pbVar8;\n  char *pcVar9;\n  byte *pbVar10;\n  void *pvVar11;\n  char *pcVar12;\n  char *pcVar13;\n  size_t sVar14;\n  int iVar15;\n  uint uVar16;\n  size_t sVar17;\n  bool bVar18;\n  bool bVar19;\n  byte bVar20;\n  addressT aVar21;\n  char *local_34;\n  char *s;\n  sb sbuf;\n  \n  bVar20 = 0;\n  found_comment = 0;\n  buffer = input_scrub_new_file(name);\n  listing_file(name);\n  listing_newline((char *)0x0);\n  register_dependency(name);\n  if (debug_type == DEBUG_STABS) {\n    stabs_generate_asm_file();\n  }\nLAB_00036ffa:\n  do {\n    buffer_limit = input_scrub_next_buffer(&input_line_pointer);\n    if (buffer_limit == (char *)0x0) {\nLAB_00037649:\n      symbol_set_value_now((symbolS *)PTR_dot_symbol_0007ff6c);\n      input_scrub_close();\n      if ((warn_comment != 0) && (found_comment != 0)) {\n        as_warn_where(found_comment_file,found_comment,"first comment found here");\n        return;\n      }\n      return;\n    }\n    read_a_source_file::lexical_block_7::last_eol = (char *)0x0;\n    pbVar8 = (byte *)input_line_pointer;\nLAB_00037040:\n    input_line_pointer = (char *)pbVar8;\n  } while (buffer_limit <= input_line_pointer);\nLAB_00037044:\n  cVar7 = is_end_of_line[(byte)input_line_pointer[-1]];\n  if (cVar7 == '\0') {\n    if (listing != 0) {\nLAB_00037065:\n      if (((listing & 0x40U) == 0) || (macro_nest < 1)) {\n        listing_newline((char *)0x0);\n      }\n      else {\n        s = _find_end_of_line(input_line_pointer,0,0,0);\n        if (read_a_source_file::lexical_block_7::last_eol != s) {\n          sVar14 = (int)s - (int)input_line_pointer;\n          read_a_source_file::lexical_block_7::last_eol = s;\n          pcVar9 = (char *)xmalloc(sVar14 + macro_nest + 2);\n          iVar15 = macro_nest;\n          memset(pcVar9,0x3e,macro_nest);\n          pcVar9[iVar15] = ' ';\n          memcpy(pcVar9 + macro_nest + 1,input_line_pointer,sVar14);\n          pcVar9[macro_nest + sVar14 + 1] = '\0';\n          listing_newline(pcVar9);\n        }\n      }\n      if (cVar7 != '\0') goto LAB_00037094;\n    }\n  }\n  else {\n    symbol_set_value_now((symbolS *)PTR_dot_symbol_0007ff6c);\n    if (input_line_pointer[-1] == '\n') {\n      bump_line_counters();\n    }\n    if (listing != 0) goto LAB_00037065;\nLAB_00037094:\n    line_label = (symbolS *)0x0;\n  }\n  do {\n    puVar6 = PTR__sch_istable_0007ff84;\n    pbVar8 = (byte *)input_line_pointer + 1;\n    bVar2 = *input_line_pointer;\n    uVar16 = (uint)bVar2;\n    input_line_pointer = (char *)pbVar8;\n    if (0x17 < (byte)(uVar16 - 9)) {\n      bVar3 = lex_type[uVar16];\n      goto joined_r0x000370d3;\n    }\n  } while ((0x800009U >> (uVar16 - 9 & 0x1f) & 1) != 0);\n  bVar3 = lex_type[uVar16];\njoined_r0x000370d3:\n  if (((bVar3 & 2) == 0) && (bVar2 != 0x22)) {\n    if (is_end_of_line[uVar16] != '\0') goto LAB_00037040;\n    if ((PTR__sch_istable_0007ff84[uVar16 * 2] & 4) != 0) {\n      iVar15 = ignore_input();\n      if (iVar15 != 0) goto LAB_00037509;\n      iVar15 = (char)bVar2 + -0x30;\n      bVar3 = *input_line_pointer;\n      bVar4 = puVar6[(uint)bVar3 * 2];\n      pbVar10 = (byte *)input_line_pointer;\n      while ((bVar4 & 4) != 0) {\n        pbVar10 = pbVar10 + 1;\n        iVar15 = (char)bVar3 + -0x30 + iVar15 * 10;\n        bVar3 = *pbVar10;\n        bVar4 = puVar6[(uint)bVar3 * 2];\n      }\n      input_line_pointer = (char *)(pbVar10 + 1);\n      if (*pbVar10 == 0x3a) {\n        fb_label_instance_inc(iVar15);\n        pcVar9 = fb_label_name(iVar15,0);\n        colon(pcVar9);\n        pbVar8 = (byte *)input_line_pointer;\n        goto LAB_00037040;\n      }\n    }\n    input_line_pointer = (char *)pbVar8;\n    if (bVar2 == 0) goto LAB_00037439;\n    pcVar9 = strchr(PTR_line_comment_chars_0007ffa0,(int)(char)bVar2);\n    bVar18 = false;\n    bVar19 = pcVar9 == (char *)0x0;\n    if (bVar19) goto LAB_00037439;\n    s = input_line_pointer;\n    iVar15 = 4;\n    pbVar8 = (byte *)input_line_pointer;\n    pbVar10 = &DAT_0005e3fa;\n    do {\n      if (iVar15 == 0) break;\n      iVar15 = iVar15 + -1;\n      bVar18 = *pbVar8 < *pbVar10;\n      bVar19 = *pbVar8 == *pbVar10;\n      pbVar8 = pbVar8 + (uint)bVar20 * -2 + 1;\n      pbVar10 = pbVar10 + (uint)bVar20 * -2 + 1;\n    } while (bVar19);\n    if ((!bVar18 && !bVar19) == bVar18) {\n      bump_line_counters();\n      pcVar9 = s + 4;\n      s = pcVar9;\n      pcVar12 = strstr(pcVar9,"#NO_APP\n");\n      if (pcVar12 == (char *)0x0) {\n        sVar14 = (int)buffer_limit - (int)pcVar9;\n        local_34 = (char *)xmalloc(sVar14 + 1);\n        memcpy(local_34,s,sVar14);\n        while (pcVar12 = input_scrub_next_buffer(&buffer), pcVar9 = buffer, pcVar12 != (char *)0x0)\n        {\n          input_line_pointer = buffer;\n          buffer_limit = pcVar12;\n          pcVar13 = strstr(buffer,"#NO_APP\n");\n          if (pcVar13 != (char *)0x0) {\n            sVar17 = (int)pcVar13 - (int)pcVar9;\n            sVar1 = sVar14 + sVar17;\n            local_34 = (char *)xrealloc(local_34,sVar1);\n            memcpy(local_34 + sVar14,buffer,sVar17);\n            input_line_pointer = pcVar13 + 8;\n            sVar14 = sVar1;\n            goto LAB_00037b57;\n          }\n          sVar17 = (int)pcVar12 - (int)pcVar9;\n          sVar1 = sVar14 + sVar17;\n          local_34 = (char *)xrealloc(local_34,sVar1);\n          memcpy(local_34 + sVar14,buffer,sVar17);\n          sVar14 = sVar1;\n        }\n        input_line_pointer = (char *)0x0;\nLAB_00037b57:\n        s = local_34;\n        pcVar12 = local_34 + sVar14;\n        scrub_string = local_34;\n      }\n      else {\n        input_line_pointer = pcVar12 + 8;\n        local_34 = (char *)0x0;\n        scrub_string = pcVar9;\n      }\n      iVar15 = (int)pcVar12 - (int)scrub_string;\n      scrub_string_end = pcVar12;\n      pcVar9 = (char *)xmalloc(iVar15);\n      pcVar12 = pcVar9;\n      while (pcVar13 = (char *)do_scrub_chars(scrub_from_string,pcVar9,\n                                              (size_t)(pcVar12 + (iVar15 - (int)pcVar9))),\n            pcVar12 + (iVar15 - (int)pcVar9) <= pcVar13) {\n        pcVar12 = (char *)xrealloc(pcVar12,iVar15 + 100);\n        pcVar9 = pcVar12 + iVar15;\n        iVar15 = iVar15 + 100;\n      }\n      pcVar9[(int)pcVar13] = '\0';\n      if (local_34 != (char *)0x0) {\n        free(local_34);\n      }\n      sVar14 = strlen(pcVar12);\n      sb_build(&sbuf,sVar14);\n      sb_add_buffer(&sbuf,pcVar12,sVar14);\n      input_scrub_include_sb(&sbuf,input_line_pointer,0);\n      sb_kill(&sbuf);\n      pcVar9 = input_scrub_next_buffer(&input_line_pointer);\n      buffer_limit = pcVar9;\n      free(pcVar12);\n    }\n    else {\n      ignore_rest_of_line();\n      pcVar9 = buffer_limit;\n    }\n    if (pcVar9 <= input_line_pointer) goto LAB_00036ffa;\n    goto LAB_00037044;\n  }\n  iVar15 = ignore_input();\n  if (iVar15 != 0) {\n    pcVar9 = _find_end_of_line(input_line_pointer + -1,0,0,0);\n    if (input_line_pointer <= buffer_limit) goto LAB_00037376;\n    goto LAB_0003737c;\n  }\n  input_line_pointer = input_line_pointer + -1;\n  c = get_symbol_name(&s);\n  pbVar8 = (byte *)s;\n  iVar15 = 1;\n  cVar7 = c;\n  if (c == '\"') {\n    cVar7 = input_line_pointer[1];\n    iVar15 = 2;\n  }\n  pcVar9 = input_line_pointer + iVar15;\n  if (cVar7 == ':') {\n    line_label = colon(s);\n    restore_line_pointer(c);\n    pbVar8 = (byte *)(input_line_pointer + 1);\n    if (input_line_pointer[1] == ' ') {\n      pbVar8 = (byte *)(input_line_pointer + 2);\n    }\n    goto LAB_00037040;\n  }\n  if (cVar7 == '=') {\n    if (*pcVar9 == '=') goto LAB_00037691;\nLAB_0003746c:\n    iVar15 = 1;\n  }\n  else {\n    if (((cVar7 != ' ') && (cVar7 != '\t')) || (*pcVar9 != '=')) {\n      strncpy(original_case_string,s,0x80);\n      puVar6 = PTR__sch_tolower_0007ffcc;\n      original_case_string[0x7f] = 0;\n      bVar2 = *pbVar8;\n      if (bVar2 == 0) goto LAB_0003726e;\n      do {\n        *pbVar8 = puVar6[bVar2];\n        bVar2 = pbVar8[1];\n        pbVar8 = pbVar8 + 1;\n      } while (bVar2 != 0);\n      if (*s == '.') {\n        pvVar11 = hash_find(po_hash,s + 1);\n        if ((pvVar11 == (void *)0x0) ||\n           (pcVar5 = *(code **)((int)pvVar11 + 4), pcVar5 == (code *)0x0)) {\n          if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          pcVar12 = input_line_pointer;\n          restore_line_pointer(c);\n          ignore_rest_of_line();\n          cVar7 = input_line_pointer[-1];\n          pcVar9 = input_line_pointer + -1;\n          input_line_pointer = input_line_pointer + -1;\n          *pcVar9 = '\0';\n          if ((macro_defined == 0) ||\n             (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {\n            pcVar9 = s;\n            *pcVar12 = '\0';\n            pcVar12 = (char *)dcgettext(0,"unknown pseudo-op: `%s\'");\n            as_bad(pcVar12,pcVar9);\n            pcVar9 = input_line_pointer + 1;\n            *input_line_pointer = cVar7;\n            input_line_pointer = pcVar9;\n            pbVar8 = (byte *)input_line_pointer;\n          }\n        }\n        else {\n          if ((mri_pending_align != 0) &&\n             ((((pcVar5 != s_space && (pcVar5 != cons)) || (*(int *)((int)pvVar11 + 8) != 1)) &&\n              (((((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)\n                && pcVar5 != (code *)PTR_s_endif_0007ff5c) && pcVar5 != s_globl &&\n               (pcVar5 != s_ignore)))))) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          cVar7 = restore_line_pointer(c);\n          if ((cVar7 == ' ') || (cVar7 == '\t')) {\n            input_line_pointer = input_line_pointer + 1;\n          }\n          (**(code **)((int)pvVar11 + 4))(*(undefined4 *)((int)pvVar11 + 8));\n          pbVar8 = (byte *)input_line_pointer;\n          if (*(code **)((int)pvVar11 + 4) == s_end) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        restore_line_pointer(c);\n        input_line_pointer = _find_end_of_line(input_line_pointer,0,1,0);\n        cVar7 = *input_line_pointer;\n        *input_line_pointer = '\0';\n        generate_lineno_debug();\n        if ((macro_defined == 0) ||\n           (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {\n          if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          md_assemble(s);\n          if (input_line_pointer == (char *)0x0) {\n            pcVar9 = (char *)dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            as_fatal(pcVar9);\n          }\n          pcVar9 = input_line_pointer + 1;\n          *input_line_pointer = cVar7;\n          input_line_pointer = pcVar9;\n          pbVar8 = (byte *)input_line_pointer;\n        }\n      }\n      goto LAB_00037040;\n    }\n    if (pcVar9[1] != '=') goto LAB_0003746c;\nLAB_00037691:\n    iVar15 = -1;\n  }\n  equals(s,iVar15);\n  demand_empty_rest_of_line();\n  pbVar8 = (byte *)input_line_pointer;\n  goto LAB_00037040;\nLAB_00037439:\n  iVar15 = ignore_input();\n  if (iVar15 == 0) {\n    input_line_pointer = input_line_pointer + -1;\n    demand_empty_rest_of_line();\n    pbVar8 = (byte *)input_line_pointer;\n    goto LAB_00037040;\n  }\nLAB_00037509:\n  pcVar9 = _find_end_of_line(input_line_pointer + -1,0,0,0);\n  if (input_line_pointer <= buffer_limit) {\nLAB_00037376:\n    pbVar8 = (byte *)buffer_limit;\n    if (buffer_limit <= pcVar9) goto LAB_00037040;\n  }\nLAB_0003737c:\n  pbVar8 = (byte *)(pcVar9 + 1);\n  goto LAB_00037040;\n}" primitive_type (function_declarator "read_a_source_file(char *name)" identifier (parameter_list "(char *name)" ( (parameter_declaration "char *name" primitive_type (pointer_declarator "*name" * identifier)) ))) (compound_statement "{\n  size_t sVar1;\n  byte bVar2;\n  byte bVar3;\n  byte bVar4;\n  code *pcVar5;\n  undefined *puVar6;\n  char c;\n  char cVar7;\n  byte *pbVar8;\n  char *pcVar9;\n  byte *pbVar10;\n  void *pvVar11;\n  char *pcVar12;\n  char *pcVar13;\n  size_t sVar14;\n  int iVar15;\n  uint uVar16;\n  size_t sVar17;\n  bool bVar18;\n  bool bVar19;\n  byte bVar20;\n  addressT aVar21;\n  char *local_34;\n  char *s;\n  sb sbuf;\n  \n  bVar20 = 0;\n  found_comment = 0;\n  buffer = input_scrub_new_file(name);\n  listing_file(name);\n  listing_newline((char *)0x0);\n  register_dependency(name);\n  if (debug_type == DEBUG_STABS) {\n    stabs_generate_asm_file();\n  }\nLAB_00036ffa:\n  do {\n    buffer_limit = input_scrub_next_buffer(&input_line_pointer);\n    if (buffer_limit == (char *)0x0) {\nLAB_00037649:\n      symbol_set_value_now((symbolS *)PTR_dot_symbol_0007ff6c);\n      input_scrub_close();\n      if ((warn_comment != 0) && (found_comment != 0)) {\n        as_warn_where(found_comment_file,found_comment,"first comment found here");\n        return;\n      }\n      return;\n    }\n    read_a_source_file::lexical_block_7::last_eol = (char *)0x0;\n    pbVar8 = (byte *)input_line_pointer;\nLAB_00037040:\n    input_line_pointer = (char *)pbVar8;\n  } while (buffer_limit <= input_line_pointer);\nLAB_00037044:\n  cVar7 = is_end_of_line[(byte)input_line_pointer[-1]];\n  if (cVar7 == '\0') {\n    if (listing != 0) {\nLAB_00037065:\n      if (((listing & 0x40U) == 0) || (macro_nest < 1)) {\n        listing_newline((char *)0x0);\n      }\n      else {\n        s = _find_end_of_line(input_line_pointer,0,0,0);\n        if (read_a_source_file::lexical_block_7::last_eol != s) {\n          sVar14 = (int)s - (int)input_line_pointer;\n          read_a_source_file::lexical_block_7::last_eol = s;\n          pcVar9 = (char *)xmalloc(sVar14 + macro_nest + 2);\n          iVar15 = macro_nest;\n          memset(pcVar9,0x3e,macro_nest);\n          pcVar9[iVar15] = ' ';\n          memcpy(pcVar9 + macro_nest + 1,input_line_pointer,sVar14);\n          pcVar9[macro_nest + sVar14 + 1] = '\0';\n          listing_newline(pcVar9);\n        }\n      }\n      if (cVar7 != '\0') goto LAB_00037094;\n    }\n  }\n  else {\n    symbol_set_value_now((symbolS *)PTR_dot_symbol_0007ff6c);\n    if (input_line_pointer[-1] == '\n') {\n      bump_line_counters();\n    }\n    if (listing != 0) goto LAB_00037065;\nLAB_00037094:\n    line_label = (symbolS *)0x0;\n  }\n  do {\n    puVar6 = PTR__sch_istable_0007ff84;\n    pbVar8 = (byte *)input_line_pointer + 1;\n    bVar2 = *input_line_pointer;\n    uVar16 = (uint)bVar2;\n    input_line_pointer = (char *)pbVar8;\n    if (0x17 < (byte)(uVar16 - 9)) {\n      bVar3 = lex_type[uVar16];\n      goto joined_r0x000370d3;\n    }\n  } while ((0x800009U >> (uVar16 - 9 & 0x1f) & 1) != 0);\n  bVar3 = lex_type[uVar16];\njoined_r0x000370d3:\n  if (((bVar3 & 2) == 0) && (bVar2 != 0x22)) {\n    if (is_end_of_line[uVar16] != '\0') goto LAB_00037040;\n    if ((PTR__sch_istable_0007ff84[uVar16 * 2] & 4) != 0) {\n      iVar15 = ignore_input();\n      if (iVar15 != 0) goto LAB_00037509;\n      iVar15 = (char)bVar2 + -0x30;\n      bVar3 = *input_line_pointer;\n      bVar4 = puVar6[(uint)bVar3 * 2];\n      pbVar10 = (byte *)input_line_pointer;\n      while ((bVar4 & 4) != 0) {\n        pbVar10 = pbVar10 + 1;\n        iVar15 = (char)bVar3 + -0x30 + iVar15 * 10;\n        bVar3 = *pbVar10;\n        bVar4 = puVar6[(uint)bVar3 * 2];\n      }\n      input_line_pointer = (char *)(pbVar10 + 1);\n      if (*pbVar10 == 0x3a) {\n        fb_label_instance_inc(iVar15);\n        pcVar9 = fb_label_name(iVar15,0);\n        colon(pcVar9);\n        pbVar8 = (byte *)input_line_pointer;\n        goto LAB_00037040;\n      }\n    }\n    input_line_pointer = (char *)pbVar8;\n    if (bVar2 == 0) goto LAB_00037439;\n    pcVar9 = strchr(PTR_line_comment_chars_0007ffa0,(int)(char)bVar2);\n    bVar18 = false;\n    bVar19 = pcVar9 == (char *)0x0;\n    if (bVar19) goto LAB_00037439;\n    s = input_line_pointer;\n    iVar15 = 4;\n    pbVar8 = (byte *)input_line_pointer;\n    pbVar10 = &DAT_0005e3fa;\n    do {\n      if (iVar15 == 0) break;\n      iVar15 = iVar15 + -1;\n      bVar18 = *pbVar8 < *pbVar10;\n      bVar19 = *pbVar8 == *pbVar10;\n      pbVar8 = pbVar8 + (uint)bVar20 * -2 + 1;\n      pbVar10 = pbVar10 + (uint)bVar20 * -2 + 1;\n    } while (bVar19);\n    if ((!bVar18 && !bVar19) == bVar18) {\n      bump_line_counters();\n      pcVar9 = s + 4;\n      s = pcVar9;\n      pcVar12 = strstr(pcVar9,"#NO_APP\n");\n      if (pcVar12 == (char *)0x0) {\n        sVar14 = (int)buffer_limit - (int)pcVar9;\n        local_34 = (char *)xmalloc(sVar14 + 1);\n        memcpy(local_34,s,sVar14);\n        while (pcVar12 = input_scrub_next_buffer(&buffer), pcVar9 = buffer, pcVar12 != (char *)0x0)\n        {\n          input_line_pointer = buffer;\n          buffer_limit = pcVar12;\n          pcVar13 = strstr(buffer,"#NO_APP\n");\n          if (pcVar13 != (char *)0x0) {\n            sVar17 = (int)pcVar13 - (int)pcVar9;\n            sVar1 = sVar14 + sVar17;\n            local_34 = (char *)xrealloc(local_34,sVar1);\n            memcpy(local_34 + sVar14,buffer,sVar17);\n            input_line_pointer = pcVar13 + 8;\n            sVar14 = sVar1;\n            goto LAB_00037b57;\n          }\n          sVar17 = (int)pcVar12 - (int)pcVar9;\n          sVar1 = sVar14 + sVar17;\n          local_34 = (char *)xrealloc(local_34,sVar1);\n          memcpy(local_34 + sVar14,buffer,sVar17);\n          sVar14 = sVar1;\n        }\n        input_line_pointer = (char *)0x0;\nLAB_00037b57:\n        s = local_34;\n        pcVar12 = local_34 + sVar14;\n        scrub_string = local_34;\n      }\n      else {\n        input_line_pointer = pcVar12 + 8;\n        local_34 = (char *)0x0;\n        scrub_string = pcVar9;\n      }\n      iVar15 = (int)pcVar12 - (int)scrub_string;\n      scrub_string_end = pcVar12;\n      pcVar9 = (char *)xmalloc(iVar15);\n      pcVar12 = pcVar9;\n      while (pcVar13 = (char *)do_scrub_chars(scrub_from_string,pcVar9,\n                                              (size_t)(pcVar12 + (iVar15 - (int)pcVar9))),\n            pcVar12 + (iVar15 - (int)pcVar9) <= pcVar13) {\n        pcVar12 = (char *)xrealloc(pcVar12,iVar15 + 100);\n        pcVar9 = pcVar12 + iVar15;\n        iVar15 = iVar15 + 100;\n      }\n      pcVar9[(int)pcVar13] = '\0';\n      if (local_34 != (char *)0x0) {\n        free(local_34);\n      }\n      sVar14 = strlen(pcVar12);\n      sb_build(&sbuf,sVar14);\n      sb_add_buffer(&sbuf,pcVar12,sVar14);\n      input_scrub_include_sb(&sbuf,input_line_pointer,0);\n      sb_kill(&sbuf);\n      pcVar9 = input_scrub_next_buffer(&input_line_pointer);\n      buffer_limit = pcVar9;\n      free(pcVar12);\n    }\n    else {\n      ignore_rest_of_line();\n      pcVar9 = buffer_limit;\n    }\n    if (pcVar9 <= input_line_pointer) goto LAB_00036ffa;\n    goto LAB_00037044;\n  }\n  iVar15 = ignore_input();\n  if (iVar15 != 0) {\n    pcVar9 = _find_end_of_line(input_line_pointer + -1,0,0,0);\n    if (input_line_pointer <= buffer_limit) goto LAB_00037376;\n    goto LAB_0003737c;\n  }\n  input_line_pointer = input_line_pointer + -1;\n  c = get_symbol_name(&s);\n  pbVar8 = (byte *)s;\n  iVar15 = 1;\n  cVar7 = c;\n  if (c == '\"') {\n    cVar7 = input_line_pointer[1];\n    iVar15 = 2;\n  }\n  pcVar9 = input_line_pointer + iVar15;\n  if (cVar7 == ':') {\n    line_label = colon(s);\n    restore_line_pointer(c);\n    pbVar8 = (byte *)(input_line_pointer + 1);\n    if (input_line_pointer[1] == ' ') {\n      pbVar8 = (byte *)(input_line_pointer + 2);\n    }\n    goto LAB_00037040;\n  }\n  if (cVar7 == '=') {\n    if (*pcVar9 == '=') goto LAB_00037691;\nLAB_0003746c:\n    iVar15 = 1;\n  }\n  else {\n    if (((cVar7 != ' ') && (cVar7 != '\t')) || (*pcVar9 != '=')) {\n      strncpy(original_case_string,s,0x80);\n      puVar6 = PTR__sch_tolower_0007ffcc;\n      original_case_string[0x7f] = 0;\n      bVar2 = *pbVar8;\n      if (bVar2 == 0) goto LAB_0003726e;\n      do {\n        *pbVar8 = puVar6[bVar2];\n        bVar2 = pbVar8[1];\n        pbVar8 = pbVar8 + 1;\n      } while (bVar2 != 0);\n      if (*s == '.') {\n        pvVar11 = hash_find(po_hash,s + 1);\n        if ((pvVar11 == (void *)0x0) ||\n           (pcVar5 = *(code **)((int)pvVar11 + 4), pcVar5 == (code *)0x0)) {\n          if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          pcVar12 = input_line_pointer;\n          restore_line_pointer(c);\n          ignore_rest_of_line();\n          cVar7 = input_line_pointer[-1];\n          pcVar9 = input_line_pointer + -1;\n          input_line_pointer = input_line_pointer + -1;\n          *pcVar9 = '\0';\n          if ((macro_defined == 0) ||\n             (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {\n            pcVar9 = s;\n            *pcVar12 = '\0';\n            pcVar12 = (char *)dcgettext(0,"unknown pseudo-op: `%s\'");\n            as_bad(pcVar12,pcVar9);\n            pcVar9 = input_line_pointer + 1;\n            *input_line_pointer = cVar7;\n            input_line_pointer = pcVar9;\n            pbVar8 = (byte *)input_line_pointer;\n          }\n        }\n        else {\n          if ((mri_pending_align != 0) &&\n             ((((pcVar5 != s_space && (pcVar5 != cons)) || (*(int *)((int)pvVar11 + 8) != 1)) &&\n              (((((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)\n                && pcVar5 != (code *)PTR_s_endif_0007ff5c) && pcVar5 != s_globl &&\n               (pcVar5 != s_ignore)))))) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          cVar7 = restore_line_pointer(c);\n          if ((cVar7 == ' ') || (cVar7 == '\t')) {\n            input_line_pointer = input_line_pointer + 1;\n          }\n          (**(code **)((int)pvVar11 + 4))(*(undefined4 *)((int)pvVar11 + 8));\n          pbVar8 = (byte *)input_line_pointer;\n          if (*(code **)((int)pvVar11 + 4) == s_end) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        restore_line_pointer(c);\n        input_line_pointer = _find_end_of_line(input_line_pointer,0,1,0);\n        cVar7 = *input_line_pointer;\n        *input_line_pointer = '\0';\n        generate_lineno_debug();\n        if ((macro_defined == 0) ||\n           (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {\n          if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          md_assemble(s);\n          if (input_line_pointer == (char *)0x0) {\n            pcVar9 = (char *)dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            as_fatal(pcVar9);\n          }\n          pcVar9 = input_line_pointer + 1;\n          *input_line_pointer = cVar7;\n          input_line_pointer = pcVar9;\n          pbVar8 = (byte *)input_line_pointer;\n        }\n      }\n      goto LAB_00037040;\n    }\n    if (pcVar9[1] != '=') goto LAB_0003746c;\nLAB_00037691:\n    iVar15 = -1;\n  }\n  equals(s,iVar15);\n  demand_empty_rest_of_line();\n  pbVar8 = (byte *)input_line_pointer;\n  goto LAB_00037040;\nLAB_00037439:\n  iVar15 = ignore_input();\n  if (iVar15 == 0) {\n    input_line_pointer = input_line_pointer + -1;\n    demand_empty_rest_of_line();\n    pbVar8 = (byte *)input_line_pointer;\n    goto LAB_00037040;\n  }\nLAB_00037509:\n  pcVar9 = _find_end_of_line(input_line_pointer + -1,0,0,0);\n  if (input_line_pointer <= buffer_limit) {\nLAB_00037376:\n    pbVar8 = (byte *)buffer_limit;\n    if (buffer_limit <= pcVar9) goto LAB_00037040;\n  }\nLAB_0003737c:\n  pbVar8 = (byte *)(pcVar9 + 1);\n  goto LAB_00037040;\n}" { (declaration "size_t sVar1;" primitive_type identifier ;) (declaration "byte bVar2;" type_identifier identifier ;) (declaration "byte bVar3;" type_identifier identifier ;) (declaration "byte bVar4;" type_identifier identifier ;) (declaration "code *pcVar5;" type_identifier (pointer_declarator "*pcVar5" * identifier) ;) (declaration "undefined *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "char c;" primitive_type identifier ;) (declaration "char cVar7;" primitive_type identifier ;) (declaration "byte *pbVar8;" type_identifier (pointer_declarator "*pbVar8" * identifier) ;) (declaration "char *pcVar9;" primitive_type (pointer_declarator "*pcVar9" * identifier) ;) (declaration "byte *pbVar10;" type_identifier (pointer_declarator "*pbVar10" * identifier) ;) (declaration "void *pvVar11;" primitive_type (pointer_declarator "*pvVar11" * identifier) ;) (declaration "char *pcVar12;" primitive_type (pointer_declarator "*pcVar12" * identifier) ;) (declaration "char *pcVar13;" primitive_type (pointer_declarator "*pcVar13" * identifier) ;) (declaration "size_t sVar14;" primitive_type identifier ;) (declaration "int iVar15;" primitive_type identifier ;) (declaration "uint uVar16;" type_identifier identifier ;) (declaration "size_t sVar17;" primitive_type identifier ;) (declaration "bool bVar18;" primitive_type identifier ;) (declaration "bool bVar19;" primitive_type identifier ;) (declaration "byte bVar20;" type_identifier identifier ;) (declaration "addressT aVar21;" type_identifier identifier ;) (declaration "char *local_34;" primitive_type (pointer_declarator "*local_34" * identifier) ;) (declaration "char *s;" primitive_type (pointer_declarator "*s" * identifier) ;) (declaration "sb sbuf;" type_identifier identifier ;) (expression_statement "bVar20 = 0;" (assignment_expression "bVar20 = 0" identifier = number_literal) ;) (expression_statement "found_comment = 0;" (assignment_expression "found_comment = 0" identifier = number_literal) ;) (expression_statement "buffer = input_scrub_new_file(name);" (assignment_expression "buffer = input_scrub_new_file(name)" identifier = (call_expression "input_scrub_new_file(name)" identifier (argument_list "(name)" ( identifier )))) ;) (expression_statement "listing_file(name);" (call_expression "listing_file(name)" identifier (argument_list "(name)" ( identifier ))) ;) (expression_statement "listing_newline((char *)0x0);" (call_expression "listing_newline((char *)0x0)" identifier (argument_list "((char *)0x0)" ( (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ))) ;) (expression_statement "register_dependency(name);" (call_expression "register_dependency(name)" identifier (argument_list "(name)" ( identifier ))) ;) (if_statement "if (debug_type == DEBUG_STABS) {\n    stabs_generate_asm_file();\n  }" if (parenthesized_expression "(debug_type == DEBUG_STABS)" ( (binary_expression "debug_type == DEBUG_STABS" identifier == identifier) )) (compound_statement "{\n    stabs_generate_asm_file();\n  }" { (expression_statement "stabs_generate_asm_file();" (call_expression "stabs_generate_asm_file()" identifier (argument_list "()" ( ))) ;) })) (labeled_statement "LAB_00036ffa:\n  do {\n    buffer_limit = input_scrub_next_buffer(&input_line_pointer);\n    if (buffer_limit == (char *)0x0) {\nLAB_00037649:\n      symbol_set_value_now((symbolS *)PTR_dot_symbol_0007ff6c);\n      input_scrub_close();\n      if ((warn_comment != 0) && (found_comment != 0)) {\n        as_warn_where(found_comment_file,found_comment,"first comment found here");\n        return;\n      }\n      return;\n    }\n    read_a_source_file::lexical_block_7::last_eol = (char *)0x0;\n    pbVar8 = (byte *)input_line_pointer;\nLAB_00037040:\n    input_line_pointer = (char *)pbVar8;\n  } while (buffer_limit <= input_line_pointer);" statement_identifier : (do_statement "do {\n    buffer_limit = input_scrub_next_buffer(&input_line_pointer);\n    if (buffer_limit == (char *)0x0) {\nLAB_00037649:\n      symbol_set_value_now((symbolS *)PTR_dot_symbol_0007ff6c);\n      input_scrub_close();\n      if ((warn_comment != 0) && (found_comment != 0)) {\n        as_warn_where(found_comment_file,found_comment,"first comment found here");\n        return;\n      }\n      return;\n    }\n    read_a_source_file::lexical_block_7::last_eol = (char *)0x0;\n    pbVar8 = (byte *)input_line_pointer;\nLAB_00037040:\n    input_line_pointer = (char *)pbVar8;\n  } while (buffer_limit <= input_line_pointer);" do (compound_statement "{\n    buffer_limit = input_scrub_next_buffer(&input_line_pointer);\n    if (buffer_limit == (char *)0x0) {\nLAB_00037649:\n      symbol_set_value_now((symbolS *)PTR_dot_symbol_0007ff6c);\n      input_scrub_close();\n      if ((warn_comment != 0) && (found_comment != 0)) {\n        as_warn_where(found_comment_file,found_comment,"first comment found here");\n        return;\n      }\n      return;\n    }\n    read_a_source_file::lexical_block_7::last_eol = (char *)0x0;\n    pbVar8 = (byte *)input_line_pointer;\nLAB_00037040:\n    input_line_pointer = (char *)pbVar8;\n  }" { (expression_statement "buffer_limit = input_scrub_next_buffer(&input_line_pointer);" (assignment_expression "buffer_limit = input_scrub_next_buffer(&input_line_pointer)" identifier = (call_expression "input_scrub_next_buffer(&input_line_pointer)" identifier (argument_list "(&input_line_pointer)" ( (pointer_expression "&input_line_pointer" & identifier) )))) ;) (if_statement "if (buffer_limit == (char *)0x0) {\nLAB_00037649:\n      symbol_set_value_now((symbolS *)PTR_dot_symbol_0007ff6c);\n      input_scrub_close();\n      if ((warn_comment != 0) && (found_comment != 0)) {\n        as_warn_where(found_comment_file,found_comment,"first comment found here");\n        return;\n      }\n      return;\n    }" if (parenthesized_expression "(buffer_limit == (char *)0x0)" ( (binary_expression "buffer_limit == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_00037649:\n      symbol_set_value_now((symbolS *)PTR_dot_symbol_0007ff6c);\n      input_scrub_close();\n      if ((warn_comment != 0) && (found_comment != 0)) {\n        as_warn_where(found_comment_file,found_comment,"first comment found here");\n        return;\n      }\n      return;\n    }" { (labeled_statement "LAB_00037649:\n      symbol_set_value_now((symbolS *)PTR_dot_symbol_0007ff6c);" statement_identifier : (expression_statement "symbol_set_value_now((symbolS *)PTR_dot_symbol_0007ff6c);" (call_expression "symbol_set_value_now((symbolS *)PTR_dot_symbol_0007ff6c)" identifier (argument_list "((symbolS *)PTR_dot_symbol_0007ff6c)" ( (cast_expression "(symbolS *)PTR_dot_symbol_0007ff6c" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;)) (expression_statement "input_scrub_close();" (call_expression "input_scrub_close()" identifier (argument_list "()" ( ))) ;) (if_statement "if ((warn_comment != 0) && (found_comment != 0)) {\n        as_warn_where(found_comment_file,found_comment,"first comment found here");\n        return;\n      }" if (parenthesized_expression "((warn_comment != 0) && (found_comment != 0))" ( (binary_expression "(warn_comment != 0) && (found_comment != 0)" (parenthesized_expression "(warn_comment != 0)" ( (binary_expression "warn_comment != 0" identifier != number_literal) )) && (parenthesized_expression "(found_comment != 0)" ( (binary_expression "found_comment != 0" identifier != number_literal) ))) )) (compound_statement "{\n        as_warn_where(found_comment_file,found_comment,"first comment found here");\n        return;\n      }" { (expression_statement "as_warn_where(found_comment_file,found_comment,"first comment found here");" (call_expression "as_warn_where(found_comment_file,found_comment,"first comment found here")" identifier (argument_list "(found_comment_file,found_comment,"first comment found here")" ( identifier , identifier , (string_literal ""first comment found here"" " string_content ") ))) ;) (return_statement "return;" return ;) })) (return_statement "return;" return ;) })) (labeled_statement "read_a_source_file::lexical_block_7::last_eol = (char *)0x0;" statement_identifier : (ERROR ":" :) (labeled_statement "lexical_block_7::last_eol = (char *)0x0;" statement_identifier : (ERROR ":" :) (expression_statement "last_eol = (char *)0x0;" (assignment_expression "last_eol = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;))) (expression_statement "pbVar8 = (byte *)input_line_pointer;" (assignment_expression "pbVar8 = (byte *)input_line_pointer" identifier = (cast_expression "(byte *)input_line_pointer" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (labeled_statement "LAB_00037040:\n    input_line_pointer = (char *)pbVar8;" statement_identifier : (expression_statement "input_line_pointer = (char *)pbVar8;" (assignment_expression "input_line_pointer = (char *)pbVar8" identifier = (cast_expression "(char *)pbVar8" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;)) }) while (parenthesized_expression "(buffer_limit <= input_line_pointer)" ( (binary_expression "buffer_limit <= input_line_pointer" identifier <= identifier) )) ;)) (labeled_statement "LAB_00037044:\n  cVar7 = is_end_of_line[(byte)input_line_pointer[-1]];" statement_identifier : (expression_statement "cVar7 = is_end_of_line[(byte)input_line_pointer[-1]];" (assignment_expression "cVar7 = is_end_of_line[(byte)input_line_pointer[-1]]" identifier = (subscript_expression "is_end_of_line[(byte)input_line_pointer[-1]]" identifier [ (cast_expression "(byte)input_line_pointer[-1]" ( (type_descriptor "byte" type_identifier) ) (subscript_expression "input_line_pointer[-1]" identifier [ number_literal ])) ])) ;)) (if_statement "if (cVar7 == '\0') {\n    if (listing != 0) {\nLAB_00037065:\n      if (((listing & 0x40U) == 0) || (macro_nest < 1)) {\n        listing_newline((char *)0x0);\n      }\n      else {\n        s = _find_end_of_line(input_line_pointer,0,0,0);\n        if (read_a_source_file::lexical_block_7::last_eol != s) {\n          sVar14 = (int)s - (int)input_line_pointer;\n          read_a_source_file::lexical_block_7::last_eol = s;\n          pcVar9 = (char *)xmalloc(sVar14 + macro_nest + 2);\n          iVar15 = macro_nest;\n          memset(pcVar9,0x3e,macro_nest);\n          pcVar9[iVar15] = ' ';\n          memcpy(pcVar9 + macro_nest + 1,input_line_pointer,sVar14);\n          pcVar9[macro_nest + sVar14 + 1] = '\0';\n          listing_newline(pcVar9);\n        }\n      }\n      if (cVar7 != '\0') goto LAB_00037094;\n    }\n  }\n  else {\n    symbol_set_value_now((symbolS *)PTR_dot_symbol_0007ff6c);\n    if (input_line_pointer[-1] == '\n') {\n      bump_line_counters();\n    }\n    if (listing != 0) goto LAB_00037065;\nLAB_00037094:\n    line_label = (symbolS *)0x0;\n  }" if (parenthesized_expression "(cVar7 == '\0')" ( (binary_expression "cVar7 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (listing != 0) {\nLAB_00037065:\n      if (((listing & 0x40U) == 0) || (macro_nest < 1)) {\n        listing_newline((char *)0x0);\n      }\n      else {\n        s = _find_end_of_line(input_line_pointer,0,0,0);\n        if (read_a_source_file::lexical_block_7::last_eol != s) {\n          sVar14 = (int)s - (int)input_line_pointer;\n          read_a_source_file::lexical_block_7::last_eol = s;\n          pcVar9 = (char *)xmalloc(sVar14 + macro_nest + 2);\n          iVar15 = macro_nest;\n          memset(pcVar9,0x3e,macro_nest);\n          pcVar9[iVar15] = ' ';\n          memcpy(pcVar9 + macro_nest + 1,input_line_pointer,sVar14);\n          pcVar9[macro_nest + sVar14 + 1] = '\0';\n          listing_newline(pcVar9);\n        }\n      }\n      if (cVar7 != '\0') goto LAB_00037094;\n    }\n  }" { (if_statement "if (listing != 0) {\nLAB_00037065:\n      if (((listing & 0x40U) == 0) || (macro_nest < 1)) {\n        listing_newline((char *)0x0);\n      }\n      else {\n        s = _find_end_of_line(input_line_pointer,0,0,0);\n        if (read_a_source_file::lexical_block_7::last_eol != s) {\n          sVar14 = (int)s - (int)input_line_pointer;\n          read_a_source_file::lexical_block_7::last_eol = s;\n          pcVar9 = (char *)xmalloc(sVar14 + macro_nest + 2);\n          iVar15 = macro_nest;\n          memset(pcVar9,0x3e,macro_nest);\n          pcVar9[iVar15] = ' ';\n          memcpy(pcVar9 + macro_nest + 1,input_line_pointer,sVar14);\n          pcVar9[macro_nest + sVar14 + 1] = '\0';\n          listing_newline(pcVar9);\n        }\n      }\n      if (cVar7 != '\0') goto LAB_00037094;\n    }" if (parenthesized_expression "(listing != 0)" ( (binary_expression "listing != 0" identifier != number_literal) )) (compound_statement "{\nLAB_00037065:\n      if (((listing & 0x40U) == 0) || (macro_nest < 1)) {\n        listing_newline((char *)0x0);\n      }\n      else {\n        s = _find_end_of_line(input_line_pointer,0,0,0);\n        if (read_a_source_file::lexical_block_7::last_eol != s) {\n          sVar14 = (int)s - (int)input_line_pointer;\n          read_a_source_file::lexical_block_7::last_eol = s;\n          pcVar9 = (char *)xmalloc(sVar14 + macro_nest + 2);\n          iVar15 = macro_nest;\n          memset(pcVar9,0x3e,macro_nest);\n          pcVar9[iVar15] = ' ';\n          memcpy(pcVar9 + macro_nest + 1,input_line_pointer,sVar14);\n          pcVar9[macro_nest + sVar14 + 1] = '\0';\n          listing_newline(pcVar9);\n        }\n      }\n      if (cVar7 != '\0') goto LAB_00037094;\n    }" { (labeled_statement "LAB_00037065:\n      if (((listing & 0x40U) == 0) || (macro_nest < 1)) {\n        listing_newline((char *)0x0);\n      }\n      else {\n        s = _find_end_of_line(input_line_pointer,0,0,0);\n        if (read_a_source_file::lexical_block_7::last_eol != s) {\n          sVar14 = (int)s - (int)input_line_pointer;\n          read_a_source_file::lexical_block_7::last_eol = s;\n          pcVar9 = (char *)xmalloc(sVar14 + macro_nest + 2);\n          iVar15 = macro_nest;\n          memset(pcVar9,0x3e,macro_nest);\n          pcVar9[iVar15] = ' ';\n          memcpy(pcVar9 + macro_nest + 1,input_line_pointer,sVar14);\n          pcVar9[macro_nest + sVar14 + 1] = '\0';\n          listing_newline(pcVar9);\n        }\n      }" statement_identifier : (if_statement "if (((listing & 0x40U) == 0) || (macro_nest < 1)) {\n        listing_newline((char *)0x0);\n      }\n      else {\n        s = _find_end_of_line(input_line_pointer,0,0,0);\n        if (read_a_source_file::lexical_block_7::last_eol != s) {\n          sVar14 = (int)s - (int)input_line_pointer;\n          read_a_source_file::lexical_block_7::last_eol = s;\n          pcVar9 = (char *)xmalloc(sVar14 + macro_nest + 2);\n          iVar15 = macro_nest;\n          memset(pcVar9,0x3e,macro_nest);\n          pcVar9[iVar15] = ' ';\n          memcpy(pcVar9 + macro_nest + 1,input_line_pointer,sVar14);\n          pcVar9[macro_nest + sVar14 + 1] = '\0';\n          listing_newline(pcVar9);\n        }\n      }" if (parenthesized_expression "(((listing & 0x40U) == 0) || (macro_nest < 1))" ( (binary_expression "((listing & 0x40U) == 0) || (macro_nest < 1)" (parenthesized_expression "((listing & 0x40U) == 0)" ( (binary_expression "(listing & 0x40U) == 0" (parenthesized_expression "(listing & 0x40U)" ( (binary_expression "listing & 0x40U" identifier & number_literal) )) == number_literal) )) || (parenthesized_expression "(macro_nest < 1)" ( (binary_expression "macro_nest < 1" identifier < number_literal) ))) )) (compound_statement "{\n        listing_newline((char *)0x0);\n      }" { (expression_statement "listing_newline((char *)0x0);" (call_expression "listing_newline((char *)0x0)" identifier (argument_list "((char *)0x0)" ( (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ))) ;) }) (else_clause "else {\n        s = _find_end_of_line(input_line_pointer,0,0,0);\n        if (read_a_source_file::lexical_block_7::last_eol != s) {\n          sVar14 = (int)s - (int)input_line_pointer;\n          read_a_source_file::lexical_block_7::last_eol = s;\n          pcVar9 = (char *)xmalloc(sVar14 + macro_nest + 2);\n          iVar15 = macro_nest;\n          memset(pcVar9,0x3e,macro_nest);\n          pcVar9[iVar15] = ' ';\n          memcpy(pcVar9 + macro_nest + 1,input_line_pointer,sVar14);\n          pcVar9[macro_nest + sVar14 + 1] = '\0';\n          listing_newline(pcVar9);\n        }\n      }" else (compound_statement "{\n        s = _find_end_of_line(input_line_pointer,0,0,0);\n        if (read_a_source_file::lexical_block_7::last_eol != s) {\n          sVar14 = (int)s - (int)input_line_pointer;\n          read_a_source_file::lexical_block_7::last_eol = s;\n          pcVar9 = (char *)xmalloc(sVar14 + macro_nest + 2);\n          iVar15 = macro_nest;\n          memset(pcVar9,0x3e,macro_nest);\n          pcVar9[iVar15] = ' ';\n          memcpy(pcVar9 + macro_nest + 1,input_line_pointer,sVar14);\n          pcVar9[macro_nest + sVar14 + 1] = '\0';\n          listing_newline(pcVar9);\n        }\n      }" { (expression_statement "s = _find_end_of_line(input_line_pointer,0,0,0);" (assignment_expression "s = _find_end_of_line(input_line_pointer,0,0,0)" identifier = (call_expression "_find_end_of_line(input_line_pointer,0,0,0)" identifier (argument_list "(input_line_pointer,0,0,0)" ( identifier , number_literal , number_literal , number_literal )))) ;) (if_statement "if (read_a_source_file::lexical_block_7::last_eol != s) {\n          sVar14 = (int)s - (int)input_line_pointer;\n          read_a_source_file::lexical_block_7::last_eol = s;\n          pcVar9 = (char *)xmalloc(sVar14 + macro_nest + 2);\n          iVar15 = macro_nest;\n          memset(pcVar9,0x3e,macro_nest);\n          pcVar9[iVar15] = ' ';\n          memcpy(pcVar9 + macro_nest + 1,input_line_pointer,sVar14);\n          pcVar9[macro_nest + sVar14 + 1] = '\0';\n          listing_newline(pcVar9);\n        }" if (parenthesized_expression "(read_a_source_file::lexical_block_7::last_eol != s)" ( (binary_expression "read_a_source_file::lexical_block_7::last_eol != s" identifier (ERROR "::lexical_block_7::last_eol" : : identifier : : identifier) != identifier) )) (compound_statement "{\n          sVar14 = (int)s - (int)input_line_pointer;\n          read_a_source_file::lexical_block_7::last_eol = s;\n          pcVar9 = (char *)xmalloc(sVar14 + macro_nest + 2);\n          iVar15 = macro_nest;\n          memset(pcVar9,0x3e,macro_nest);\n          pcVar9[iVar15] = ' ';\n          memcpy(pcVar9 + macro_nest + 1,input_line_pointer,sVar14);\n          pcVar9[macro_nest + sVar14 + 1] = '\0';\n          listing_newline(pcVar9);\n        }" { (expression_statement "sVar14 = (int)s - (int)input_line_pointer;" (assignment_expression "sVar14 = (int)s - (int)input_line_pointer" identifier = (binary_expression "(int)s - (int)input_line_pointer" (cast_expression "(int)s" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)input_line_pointer" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (labeled_statement "read_a_source_file::lexical_block_7::last_eol = s;" statement_identifier : (ERROR ":" :) (labeled_statement "lexical_block_7::last_eol = s;" statement_identifier : (ERROR ":" :) (expression_statement "last_eol = s;" (assignment_expression "last_eol = s" identifier = identifier) ;))) (expression_statement "pcVar9 = (char *)xmalloc(sVar14 + macro_nest + 2);" (assignment_expression "pcVar9 = (char *)xmalloc(sVar14 + macro_nest + 2)" identifier = (cast_expression "(char *)xmalloc(sVar14 + macro_nest + 2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(sVar14 + macro_nest + 2)" identifier (argument_list "(sVar14 + macro_nest + 2)" ( (binary_expression "sVar14 + macro_nest + 2" (binary_expression "sVar14 + macro_nest" identifier + identifier) + number_literal) ))))) ;) (expression_statement "iVar15 = macro_nest;" (assignment_expression "iVar15 = macro_nest" identifier = identifier) ;) (expression_statement "memset(pcVar9,0x3e,macro_nest);" (call_expression "memset(pcVar9,0x3e,macro_nest)" identifier (argument_list "(pcVar9,0x3e,macro_nest)" ( identifier , number_literal , identifier ))) ;) (expression_statement "pcVar9[iVar15] = ' ';" (assignment_expression "pcVar9[iVar15] = ' '" (subscript_expression "pcVar9[iVar15]" identifier [ identifier ]) = (char_literal "' '" ' character ')) ;) (expression_statement "memcpy(pcVar9 + macro_nest + 1,input_line_pointer,sVar14);" (call_expression "memcpy(pcVar9 + macro_nest + 1,input_line_pointer,sVar14)" identifier (argument_list "(pcVar9 + macro_nest + 1,input_line_pointer,sVar14)" ( (binary_expression "pcVar9 + macro_nest + 1" (binary_expression "pcVar9 + macro_nest" identifier + identifier) + number_literal) , identifier , identifier ))) ;) (expression_statement "pcVar9[macro_nest + sVar14 + 1] = '\0';" (assignment_expression "pcVar9[macro_nest + sVar14 + 1] = '\0'" (subscript_expression "pcVar9[macro_nest + sVar14 + 1]" identifier [ (binary_expression "macro_nest + sVar14 + 1" (binary_expression "macro_nest + sVar14" identifier + identifier) + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "listing_newline(pcVar9);" (call_expression "listing_newline(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) })) })))) (if_statement "if (cVar7 != '\0') goto LAB_00037094;" if (parenthesized_expression "(cVar7 != '\0')" ( (binary_expression "cVar7 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00037094;" goto statement_identifier ;)) })) }) (else_clause "else {\n    symbol_set_value_now((symbolS *)PTR_dot_symbol_0007ff6c);\n    if (input_line_pointer[-1] == '\n') {\n      bump_line_counters();\n    }\n    if (listing != 0) goto LAB_00037065;\nLAB_00037094:\n    line_label = (symbolS *)0x0;\n  }" else (compound_statement "{\n    symbol_set_value_now((symbolS *)PTR_dot_symbol_0007ff6c);\n    if (input_line_pointer[-1] == '\n') {\n      bump_line_counters();\n    }\n    if (listing != 0) goto LAB_00037065;\nLAB_00037094:\n    line_label = (symbolS *)0x0;\n  }" { (expression_statement "symbol_set_value_now((symbolS *)PTR_dot_symbol_0007ff6c);" (call_expression "symbol_set_value_now((symbolS *)PTR_dot_symbol_0007ff6c)" identifier (argument_list "((symbolS *)PTR_dot_symbol_0007ff6c)" ( (cast_expression "(symbolS *)PTR_dot_symbol_0007ff6c" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) (if_statement "if (input_line_pointer[-1] == '\n') {\n      bump_line_counters();\n    }" if (parenthesized_expression "(input_line_pointer[-1] == '\n')" ( (binary_expression "input_line_pointer[-1] == '\n'" (subscript_expression "input_line_pointer[-1]" identifier [ number_literal ]) == (char_literal "'\n'" ' escape_sequence ')) )) (compound_statement "{\n      bump_line_counters();\n    }" { (expression_statement "bump_line_counters();" (call_expression "bump_line_counters()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (listing != 0) goto LAB_00037065;" if (parenthesized_expression "(listing != 0)" ( (binary_expression "listing != 0" identifier != number_literal) )) (goto_statement "goto LAB_00037065;" goto statement_identifier ;)) (labeled_statement "LAB_00037094:\n    line_label = (symbolS *)0x0;" statement_identifier : (expression_statement "line_label = (symbolS *)0x0;" (assignment_expression "line_label = (symbolS *)0x0" identifier = (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) }))) (do_statement "do {\n    puVar6 = PTR__sch_istable_0007ff84;\n    pbVar8 = (byte *)input_line_pointer + 1;\n    bVar2 = *input_line_pointer;\n    uVar16 = (uint)bVar2;\n    input_line_pointer = (char *)pbVar8;\n    if (0x17 < (byte)(uVar16 - 9)) {\n      bVar3 = lex_type[uVar16];\n      goto joined_r0x000370d3;\n    }\n  } while ((0x800009U >> (uVar16 - 9 & 0x1f) & 1) != 0);" do (compound_statement "{\n    puVar6 = PTR__sch_istable_0007ff84;\n    pbVar8 = (byte *)input_line_pointer + 1;\n    bVar2 = *input_line_pointer;\n    uVar16 = (uint)bVar2;\n    input_line_pointer = (char *)pbVar8;\n    if (0x17 < (byte)(uVar16 - 9)) {\n      bVar3 = lex_type[uVar16];\n      goto joined_r0x000370d3;\n    }\n  }" { (expression_statement "puVar6 = PTR__sch_istable_0007ff84;" (assignment_expression "puVar6 = PTR__sch_istable_0007ff84" identifier = identifier) ;) (expression_statement "pbVar8 = (byte *)input_line_pointer + 1;" (assignment_expression "pbVar8 = (byte *)input_line_pointer + 1" identifier = (binary_expression "(byte *)input_line_pointer + 1" (cast_expression "(byte *)input_line_pointer" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) + number_literal)) ;) (expression_statement "bVar2 = *input_line_pointer;" (assignment_expression "bVar2 = *input_line_pointer" identifier = (pointer_expression "*input_line_pointer" * identifier)) ;) (expression_statement "uVar16 = (uint)bVar2;" (assignment_expression "uVar16 = (uint)bVar2" identifier = (cast_expression "(uint)bVar2" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "input_line_pointer = (char *)pbVar8;" (assignment_expression "input_line_pointer = (char *)pbVar8" identifier = (cast_expression "(char *)pbVar8" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (0x17 < (byte)(uVar16 - 9)) {\n      bVar3 = lex_type[uVar16];\n      goto joined_r0x000370d3;\n    }" if (parenthesized_expression "(0x17 < (byte)(uVar16 - 9))" ( (binary_expression "0x17 < (byte)(uVar16 - 9)" number_literal < (call_expression "(byte)(uVar16 - 9)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(uVar16 - 9)" ( (binary_expression "uVar16 - 9" identifier - number_literal) )))) )) (compound_statement "{\n      bVar3 = lex_type[uVar16];\n      goto joined_r0x000370d3;\n    }" { (expression_statement "bVar3 = lex_type[uVar16];" (assignment_expression "bVar3 = lex_type[uVar16]" identifier = (subscript_expression "lex_type[uVar16]" identifier [ identifier ])) ;) (goto_statement "goto joined_r0x000370d3;" goto statement_identifier ;) })) }) while (parenthesized_expression "((0x800009U >> (uVar16 - 9 & 0x1f) & 1) != 0)" ( (binary_expression "(0x800009U >> (uVar16 - 9 & 0x1f) & 1) != 0" (parenthesized_expression "(0x800009U >> (uVar16 - 9 & 0x1f) & 1)" ( (binary_expression "0x800009U >> (uVar16 - 9 & 0x1f) & 1" (binary_expression "0x800009U >> (uVar16 - 9 & 0x1f)" number_literal >> (parenthesized_expression "(uVar16 - 9 & 0x1f)" ( (binary_expression "uVar16 - 9 & 0x1f" (binary_expression "uVar16 - 9" identifier - number_literal) & number_literal) ))) & number_literal) )) != number_literal) )) ;) (expression_statement "bVar3 = lex_type[uVar16];" (assignment_expression "bVar3 = lex_type[uVar16]" identifier = (subscript_expression "lex_type[uVar16]" identifier [ identifier ])) ;) (labeled_statement "joined_r0x000370d3:\n  if (((bVar3 & 2) == 0) && (bVar2 != 0x22)) {\n    if (is_end_of_line[uVar16] != '\0') goto LAB_00037040;\n    if ((PTR__sch_istable_0007ff84[uVar16 * 2] & 4) != 0) {\n      iVar15 = ignore_input();\n      if (iVar15 != 0) goto LAB_00037509;\n      iVar15 = (char)bVar2 + -0x30;\n      bVar3 = *input_line_pointer;\n      bVar4 = puVar6[(uint)bVar3 * 2];\n      pbVar10 = (byte *)input_line_pointer;\n      while ((bVar4 & 4) != 0) {\n        pbVar10 = pbVar10 + 1;\n        iVar15 = (char)bVar3 + -0x30 + iVar15 * 10;\n        bVar3 = *pbVar10;\n        bVar4 = puVar6[(uint)bVar3 * 2];\n      }\n      input_line_pointer = (char *)(pbVar10 + 1);\n      if (*pbVar10 == 0x3a) {\n        fb_label_instance_inc(iVar15);\n        pcVar9 = fb_label_name(iVar15,0);\n        colon(pcVar9);\n        pbVar8 = (byte *)input_line_pointer;\n        goto LAB_00037040;\n      }\n    }\n    input_line_pointer = (char *)pbVar8;\n    if (bVar2 == 0) goto LAB_00037439;\n    pcVar9 = strchr(PTR_line_comment_chars_0007ffa0,(int)(char)bVar2);\n    bVar18 = false;\n    bVar19 = pcVar9 == (char *)0x0;\n    if (bVar19) goto LAB_00037439;\n    s = input_line_pointer;\n    iVar15 = 4;\n    pbVar8 = (byte *)input_line_pointer;\n    pbVar10 = &DAT_0005e3fa;\n    do {\n      if (iVar15 == 0) break;\n      iVar15 = iVar15 + -1;\n      bVar18 = *pbVar8 < *pbVar10;\n      bVar19 = *pbVar8 == *pbVar10;\n      pbVar8 = pbVar8 + (uint)bVar20 * -2 + 1;\n      pbVar10 = pbVar10 + (uint)bVar20 * -2 + 1;\n    } while (bVar19);\n    if ((!bVar18 && !bVar19) == bVar18) {\n      bump_line_counters();\n      pcVar9 = s + 4;\n      s = pcVar9;\n      pcVar12 = strstr(pcVar9,"#NO_APP\n");\n      if (pcVar12 == (char *)0x0) {\n        sVar14 = (int)buffer_limit - (int)pcVar9;\n        local_34 = (char *)xmalloc(sVar14 + 1);\n        memcpy(local_34,s,sVar14);\n        while (pcVar12 = input_scrub_next_buffer(&buffer), pcVar9 = buffer, pcVar12 != (char *)0x0)\n        {\n          input_line_pointer = buffer;\n          buffer_limit = pcVar12;\n          pcVar13 = strstr(buffer,"#NO_APP\n");\n          if (pcVar13 != (char *)0x0) {\n            sVar17 = (int)pcVar13 - (int)pcVar9;\n            sVar1 = sVar14 + sVar17;\n            local_34 = (char *)xrealloc(local_34,sVar1);\n            memcpy(local_34 + sVar14,buffer,sVar17);\n            input_line_pointer = pcVar13 + 8;\n            sVar14 = sVar1;\n            goto LAB_00037b57;\n          }\n          sVar17 = (int)pcVar12 - (int)pcVar9;\n          sVar1 = sVar14 + sVar17;\n          local_34 = (char *)xrealloc(local_34,sVar1);\n          memcpy(local_34 + sVar14,buffer,sVar17);\n          sVar14 = sVar1;\n        }\n        input_line_pointer = (char *)0x0;\nLAB_00037b57:\n        s = local_34;\n        pcVar12 = local_34 + sVar14;\n        scrub_string = local_34;\n      }\n      else {\n        input_line_pointer = pcVar12 + 8;\n        local_34 = (char *)0x0;\n        scrub_string = pcVar9;\n      }\n      iVar15 = (int)pcVar12 - (int)scrub_string;\n      scrub_string_end = pcVar12;\n      pcVar9 = (char *)xmalloc(iVar15);\n      pcVar12 = pcVar9;\n      while (pcVar13 = (char *)do_scrub_chars(scrub_from_string,pcVar9,\n                                              (size_t)(pcVar12 + (iVar15 - (int)pcVar9))),\n            pcVar12 + (iVar15 - (int)pcVar9) <= pcVar13) {\n        pcVar12 = (char *)xrealloc(pcVar12,iVar15 + 100);\n        pcVar9 = pcVar12 + iVar15;\n        iVar15 = iVar15 + 100;\n      }\n      pcVar9[(int)pcVar13] = '\0';\n      if (local_34 != (char *)0x0) {\n        free(local_34);\n      }\n      sVar14 = strlen(pcVar12);\n      sb_build(&sbuf,sVar14);\n      sb_add_buffer(&sbuf,pcVar12,sVar14);\n      input_scrub_include_sb(&sbuf,input_line_pointer,0);\n      sb_kill(&sbuf);\n      pcVar9 = input_scrub_next_buffer(&input_line_pointer);\n      buffer_limit = pcVar9;\n      free(pcVar12);\n    }\n    else {\n      ignore_rest_of_line();\n      pcVar9 = buffer_limit;\n    }\n    if (pcVar9 <= input_line_pointer) goto LAB_00036ffa;\n    goto LAB_00037044;\n  }" statement_identifier : (if_statement "if (((bVar3 & 2) == 0) && (bVar2 != 0x22)) {\n    if (is_end_of_line[uVar16] != '\0') goto LAB_00037040;\n    if ((PTR__sch_istable_0007ff84[uVar16 * 2] & 4) != 0) {\n      iVar15 = ignore_input();\n      if (iVar15 != 0) goto LAB_00037509;\n      iVar15 = (char)bVar2 + -0x30;\n      bVar3 = *input_line_pointer;\n      bVar4 = puVar6[(uint)bVar3 * 2];\n      pbVar10 = (byte *)input_line_pointer;\n      while ((bVar4 & 4) != 0) {\n        pbVar10 = pbVar10 + 1;\n        iVar15 = (char)bVar3 + -0x30 + iVar15 * 10;\n        bVar3 = *pbVar10;\n        bVar4 = puVar6[(uint)bVar3 * 2];\n      }\n      input_line_pointer = (char *)(pbVar10 + 1);\n      if (*pbVar10 == 0x3a) {\n        fb_label_instance_inc(iVar15);\n        pcVar9 = fb_label_name(iVar15,0);\n        colon(pcVar9);\n        pbVar8 = (byte *)input_line_pointer;\n        goto LAB_00037040;\n      }\n    }\n    input_line_pointer = (char *)pbVar8;\n    if (bVar2 == 0) goto LAB_00037439;\n    pcVar9 = strchr(PTR_line_comment_chars_0007ffa0,(int)(char)bVar2);\n    bVar18 = false;\n    bVar19 = pcVar9 == (char *)0x0;\n    if (bVar19) goto LAB_00037439;\n    s = input_line_pointer;\n    iVar15 = 4;\n    pbVar8 = (byte *)input_line_pointer;\n    pbVar10 = &DAT_0005e3fa;\n    do {\n      if (iVar15 == 0) break;\n      iVar15 = iVar15 + -1;\n      bVar18 = *pbVar8 < *pbVar10;\n      bVar19 = *pbVar8 == *pbVar10;\n      pbVar8 = pbVar8 + (uint)bVar20 * -2 + 1;\n      pbVar10 = pbVar10 + (uint)bVar20 * -2 + 1;\n    } while (bVar19);\n    if ((!bVar18 && !bVar19) == bVar18) {\n      bump_line_counters();\n      pcVar9 = s + 4;\n      s = pcVar9;\n      pcVar12 = strstr(pcVar9,"#NO_APP\n");\n      if (pcVar12 == (char *)0x0) {\n        sVar14 = (int)buffer_limit - (int)pcVar9;\n        local_34 = (char *)xmalloc(sVar14 + 1);\n        memcpy(local_34,s,sVar14);\n        while (pcVar12 = input_scrub_next_buffer(&buffer), pcVar9 = buffer, pcVar12 != (char *)0x0)\n        {\n          input_line_pointer = buffer;\n          buffer_limit = pcVar12;\n          pcVar13 = strstr(buffer,"#NO_APP\n");\n          if (pcVar13 != (char *)0x0) {\n            sVar17 = (int)pcVar13 - (int)pcVar9;\n            sVar1 = sVar14 + sVar17;\n            local_34 = (char *)xrealloc(local_34,sVar1);\n            memcpy(local_34 + sVar14,buffer,sVar17);\n            input_line_pointer = pcVar13 + 8;\n            sVar14 = sVar1;\n            goto LAB_00037b57;\n          }\n          sVar17 = (int)pcVar12 - (int)pcVar9;\n          sVar1 = sVar14 + sVar17;\n          local_34 = (char *)xrealloc(local_34,sVar1);\n          memcpy(local_34 + sVar14,buffer,sVar17);\n          sVar14 = sVar1;\n        }\n        input_line_pointer = (char *)0x0;\nLAB_00037b57:\n        s = local_34;\n        pcVar12 = local_34 + sVar14;\n        scrub_string = local_34;\n      }\n      else {\n        input_line_pointer = pcVar12 + 8;\n        local_34 = (char *)0x0;\n        scrub_string = pcVar9;\n      }\n      iVar15 = (int)pcVar12 - (int)scrub_string;\n      scrub_string_end = pcVar12;\n      pcVar9 = (char *)xmalloc(iVar15);\n      pcVar12 = pcVar9;\n      while (pcVar13 = (char *)do_scrub_chars(scrub_from_string,pcVar9,\n                                              (size_t)(pcVar12 + (iVar15 - (int)pcVar9))),\n            pcVar12 + (iVar15 - (int)pcVar9) <= pcVar13) {\n        pcVar12 = (char *)xrealloc(pcVar12,iVar15 + 100);\n        pcVar9 = pcVar12 + iVar15;\n        iVar15 = iVar15 + 100;\n      }\n      pcVar9[(int)pcVar13] = '\0';\n      if (local_34 != (char *)0x0) {\n        free(local_34);\n      }\n      sVar14 = strlen(pcVar12);\n      sb_build(&sbuf,sVar14);\n      sb_add_buffer(&sbuf,pcVar12,sVar14);\n      input_scrub_include_sb(&sbuf,input_line_pointer,0);\n      sb_kill(&sbuf);\n      pcVar9 = input_scrub_next_buffer(&input_line_pointer);\n      buffer_limit = pcVar9;\n      free(pcVar12);\n    }\n    else {\n      ignore_rest_of_line();\n      pcVar9 = buffer_limit;\n    }\n    if (pcVar9 <= input_line_pointer) goto LAB_00036ffa;\n    goto LAB_00037044;\n  }" if (parenthesized_expression "(((bVar3 & 2) == 0) && (bVar2 != 0x22))" ( (binary_expression "((bVar3 & 2) == 0) && (bVar2 != 0x22)" (parenthesized_expression "((bVar3 & 2) == 0)" ( (binary_expression "(bVar3 & 2) == 0" (parenthesized_expression "(bVar3 & 2)" ( (binary_expression "bVar3 & 2" identifier & number_literal) )) == number_literal) )) && (parenthesized_expression "(bVar2 != 0x22)" ( (binary_expression "bVar2 != 0x22" identifier != number_literal) ))) )) (compound_statement "{\n    if (is_end_of_line[uVar16] != '\0') goto LAB_00037040;\n    if ((PTR__sch_istable_0007ff84[uVar16 * 2] & 4) != 0) {\n      iVar15 = ignore_input();\n      if (iVar15 != 0) goto LAB_00037509;\n      iVar15 = (char)bVar2 + -0x30;\n      bVar3 = *input_line_pointer;\n      bVar4 = puVar6[(uint)bVar3 * 2];\n      pbVar10 = (byte *)input_line_pointer;\n      while ((bVar4 & 4) != 0) {\n        pbVar10 = pbVar10 + 1;\n        iVar15 = (char)bVar3 + -0x30 + iVar15 * 10;\n        bVar3 = *pbVar10;\n        bVar4 = puVar6[(uint)bVar3 * 2];\n      }\n      input_line_pointer = (char *)(pbVar10 + 1);\n      if (*pbVar10 == 0x3a) {\n        fb_label_instance_inc(iVar15);\n        pcVar9 = fb_label_name(iVar15,0);\n        colon(pcVar9);\n        pbVar8 = (byte *)input_line_pointer;\n        goto LAB_00037040;\n      }\n    }\n    input_line_pointer = (char *)pbVar8;\n    if (bVar2 == 0) goto LAB_00037439;\n    pcVar9 = strchr(PTR_line_comment_chars_0007ffa0,(int)(char)bVar2);\n    bVar18 = false;\n    bVar19 = pcVar9 == (char *)0x0;\n    if (bVar19) goto LAB_00037439;\n    s = input_line_pointer;\n    iVar15 = 4;\n    pbVar8 = (byte *)input_line_pointer;\n    pbVar10 = &DAT_0005e3fa;\n    do {\n      if (iVar15 == 0) break;\n      iVar15 = iVar15 + -1;\n      bVar18 = *pbVar8 < *pbVar10;\n      bVar19 = *pbVar8 == *pbVar10;\n      pbVar8 = pbVar8 + (uint)bVar20 * -2 + 1;\n      pbVar10 = pbVar10 + (uint)bVar20 * -2 + 1;\n    } while (bVar19);\n    if ((!bVar18 && !bVar19) == bVar18) {\n      bump_line_counters();\n      pcVar9 = s + 4;\n      s = pcVar9;\n      pcVar12 = strstr(pcVar9,"#NO_APP\n");\n      if (pcVar12 == (char *)0x0) {\n        sVar14 = (int)buffer_limit - (int)pcVar9;\n        local_34 = (char *)xmalloc(sVar14 + 1);\n        memcpy(local_34,s,sVar14);\n        while (pcVar12 = input_scrub_next_buffer(&buffer), pcVar9 = buffer, pcVar12 != (char *)0x0)\n        {\n          input_line_pointer = buffer;\n          buffer_limit = pcVar12;\n          pcVar13 = strstr(buffer,"#NO_APP\n");\n          if (pcVar13 != (char *)0x0) {\n            sVar17 = (int)pcVar13 - (int)pcVar9;\n            sVar1 = sVar14 + sVar17;\n            local_34 = (char *)xrealloc(local_34,sVar1);\n            memcpy(local_34 + sVar14,buffer,sVar17);\n            input_line_pointer = pcVar13 + 8;\n            sVar14 = sVar1;\n            goto LAB_00037b57;\n          }\n          sVar17 = (int)pcVar12 - (int)pcVar9;\n          sVar1 = sVar14 + sVar17;\n          local_34 = (char *)xrealloc(local_34,sVar1);\n          memcpy(local_34 + sVar14,buffer,sVar17);\n          sVar14 = sVar1;\n        }\n        input_line_pointer = (char *)0x0;\nLAB_00037b57:\n        s = local_34;\n        pcVar12 = local_34 + sVar14;\n        scrub_string = local_34;\n      }\n      else {\n        input_line_pointer = pcVar12 + 8;\n        local_34 = (char *)0x0;\n        scrub_string = pcVar9;\n      }\n      iVar15 = (int)pcVar12 - (int)scrub_string;\n      scrub_string_end = pcVar12;\n      pcVar9 = (char *)xmalloc(iVar15);\n      pcVar12 = pcVar9;\n      while (pcVar13 = (char *)do_scrub_chars(scrub_from_string,pcVar9,\n                                              (size_t)(pcVar12 + (iVar15 - (int)pcVar9))),\n            pcVar12 + (iVar15 - (int)pcVar9) <= pcVar13) {\n        pcVar12 = (char *)xrealloc(pcVar12,iVar15 + 100);\n        pcVar9 = pcVar12 + iVar15;\n        iVar15 = iVar15 + 100;\n      }\n      pcVar9[(int)pcVar13] = '\0';\n      if (local_34 != (char *)0x0) {\n        free(local_34);\n      }\n      sVar14 = strlen(pcVar12);\n      sb_build(&sbuf,sVar14);\n      sb_add_buffer(&sbuf,pcVar12,sVar14);\n      input_scrub_include_sb(&sbuf,input_line_pointer,0);\n      sb_kill(&sbuf);\n      pcVar9 = input_scrub_next_buffer(&input_line_pointer);\n      buffer_limit = pcVar9;\n      free(pcVar12);\n    }\n    else {\n      ignore_rest_of_line();\n      pcVar9 = buffer_limit;\n    }\n    if (pcVar9 <= input_line_pointer) goto LAB_00036ffa;\n    goto LAB_00037044;\n  }" { (if_statement "if (is_end_of_line[uVar16] != '\0') goto LAB_00037040;" if (parenthesized_expression "(is_end_of_line[uVar16] != '\0')" ( (binary_expression "is_end_of_line[uVar16] != '\0'" (subscript_expression "is_end_of_line[uVar16]" identifier [ identifier ]) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00037040;" goto statement_identifier ;)) (if_statement "if ((PTR__sch_istable_0007ff84[uVar16 * 2] & 4) != 0) {\n      iVar15 = ignore_input();\n      if (iVar15 != 0) goto LAB_00037509;\n      iVar15 = (char)bVar2 + -0x30;\n      bVar3 = *input_line_pointer;\n      bVar4 = puVar6[(uint)bVar3 * 2];\n      pbVar10 = (byte *)input_line_pointer;\n      while ((bVar4 & 4) != 0) {\n        pbVar10 = pbVar10 + 1;\n        iVar15 = (char)bVar3 + -0x30 + iVar15 * 10;\n        bVar3 = *pbVar10;\n        bVar4 = puVar6[(uint)bVar3 * 2];\n      }\n      input_line_pointer = (char *)(pbVar10 + 1);\n      if (*pbVar10 == 0x3a) {\n        fb_label_instance_inc(iVar15);\n        pcVar9 = fb_label_name(iVar15,0);\n        colon(pcVar9);\n        pbVar8 = (byte *)input_line_pointer;\n        goto LAB_00037040;\n      }\n    }" if (parenthesized_expression "((PTR__sch_istable_0007ff84[uVar16 * 2] & 4) != 0)" ( (binary_expression "(PTR__sch_istable_0007ff84[uVar16 * 2] & 4) != 0" (parenthesized_expression "(PTR__sch_istable_0007ff84[uVar16 * 2] & 4)" ( (binary_expression "PTR__sch_istable_0007ff84[uVar16 * 2] & 4" (subscript_expression "PTR__sch_istable_0007ff84[uVar16 * 2]" identifier [ (binary_expression "uVar16 * 2" identifier * number_literal) ]) & number_literal) )) != number_literal) )) (compound_statement "{\n      iVar15 = ignore_input();\n      if (iVar15 != 0) goto LAB_00037509;\n      iVar15 = (char)bVar2 + -0x30;\n      bVar3 = *input_line_pointer;\n      bVar4 = puVar6[(uint)bVar3 * 2];\n      pbVar10 = (byte *)input_line_pointer;\n      while ((bVar4 & 4) != 0) {\n        pbVar10 = pbVar10 + 1;\n        iVar15 = (char)bVar3 + -0x30 + iVar15 * 10;\n        bVar3 = *pbVar10;\n        bVar4 = puVar6[(uint)bVar3 * 2];\n      }\n      input_line_pointer = (char *)(pbVar10 + 1);\n      if (*pbVar10 == 0x3a) {\n        fb_label_instance_inc(iVar15);\n        pcVar9 = fb_label_name(iVar15,0);\n        colon(pcVar9);\n        pbVar8 = (byte *)input_line_pointer;\n        goto LAB_00037040;\n      }\n    }" { (expression_statement "iVar15 = ignore_input();" (assignment_expression "iVar15 = ignore_input()" identifier = (call_expression "ignore_input()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar15 != 0) goto LAB_00037509;" if (parenthesized_expression "(iVar15 != 0)" ( (binary_expression "iVar15 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00037509;" goto statement_identifier ;)) (expression_statement "iVar15 = (char)bVar2 + -0x30;" (assignment_expression "iVar15 = (char)bVar2 + -0x30" identifier = (binary_expression "(char)bVar2 + -0x30" (cast_expression "(char)bVar2" ( (type_descriptor "char" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "bVar3 = *input_line_pointer;" (assignment_expression "bVar3 = *input_line_pointer" identifier = (pointer_expression "*input_line_pointer" * identifier)) ;) (expression_statement "bVar4 = puVar6[(uint)bVar3 * 2];" (assignment_expression "bVar4 = puVar6[(uint)bVar3 * 2]" identifier = (subscript_expression "puVar6[(uint)bVar3 * 2]" identifier [ (binary_expression "(uint)bVar3 * 2" (cast_expression "(uint)bVar3" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal) ])) ;) (expression_statement "pbVar10 = (byte *)input_line_pointer;" (assignment_expression "pbVar10 = (byte *)input_line_pointer" identifier = (cast_expression "(byte *)input_line_pointer" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (while_statement "while ((bVar4 & 4) != 0) {\n        pbVar10 = pbVar10 + 1;\n        iVar15 = (char)bVar3 + -0x30 + iVar15 * 10;\n        bVar3 = *pbVar10;\n        bVar4 = puVar6[(uint)bVar3 * 2];\n      }" while (parenthesized_expression "((bVar4 & 4) != 0)" ( (binary_expression "(bVar4 & 4) != 0" (parenthesized_expression "(bVar4 & 4)" ( (binary_expression "bVar4 & 4" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n        pbVar10 = pbVar10 + 1;\n        iVar15 = (char)bVar3 + -0x30 + iVar15 * 10;\n        bVar3 = *pbVar10;\n        bVar4 = puVar6[(uint)bVar3 * 2];\n      }" { (expression_statement "pbVar10 = pbVar10 + 1;" (assignment_expression "pbVar10 = pbVar10 + 1" identifier = (binary_expression "pbVar10 + 1" identifier + number_literal)) ;) (expression_statement "iVar15 = (char)bVar3 + -0x30 + iVar15 * 10;" (assignment_expression "iVar15 = (char)bVar3 + -0x30 + iVar15 * 10" identifier = (binary_expression "(char)bVar3 + -0x30 + iVar15 * 10" (binary_expression "(char)bVar3 + -0x30" (cast_expression "(char)bVar3" ( (type_descriptor "char" primitive_type) ) identifier) + number_literal) + (binary_expression "iVar15 * 10" identifier * number_literal))) ;) (expression_statement "bVar3 = *pbVar10;" (assignment_expression "bVar3 = *pbVar10" identifier = (pointer_expression "*pbVar10" * identifier)) ;) (expression_statement "bVar4 = puVar6[(uint)bVar3 * 2];" (assignment_expression "bVar4 = puVar6[(uint)bVar3 * 2]" identifier = (subscript_expression "puVar6[(uint)bVar3 * 2]" identifier [ (binary_expression "(uint)bVar3 * 2" (cast_expression "(uint)bVar3" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal) ])) ;) })) (expression_statement "input_line_pointer = (char *)(pbVar10 + 1);" (assignment_expression "input_line_pointer = (char *)(pbVar10 + 1)" identifier = (cast_expression "(char *)(pbVar10 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar10 + 1)" ( (binary_expression "pbVar10 + 1" identifier + number_literal) )))) ;) (if_statement "if (*pbVar10 == 0x3a) {\n        fb_label_instance_inc(iVar15);\n        pcVar9 = fb_label_name(iVar15,0);\n        colon(pcVar9);\n        pbVar8 = (byte *)input_line_pointer;\n        goto LAB_00037040;\n      }" if (parenthesized_expression "(*pbVar10 == 0x3a)" ( (binary_expression "*pbVar10 == 0x3a" (pointer_expression "*pbVar10" * identifier) == number_literal) )) (compound_statement "{\n        fb_label_instance_inc(iVar15);\n        pcVar9 = fb_label_name(iVar15,0);\n        colon(pcVar9);\n        pbVar8 = (byte *)input_line_pointer;\n        goto LAB_00037040;\n      }" { (expression_statement "fb_label_instance_inc(iVar15);" (call_expression "fb_label_instance_inc(iVar15)" identifier (argument_list "(iVar15)" ( identifier ))) ;) (expression_statement "pcVar9 = fb_label_name(iVar15,0);" (assignment_expression "pcVar9 = fb_label_name(iVar15,0)" identifier = (call_expression "fb_label_name(iVar15,0)" identifier (argument_list "(iVar15,0)" ( identifier , number_literal )))) ;) (expression_statement "colon(pcVar9);" (call_expression "colon(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) (expression_statement "pbVar8 = (byte *)input_line_pointer;" (assignment_expression "pbVar8 = (byte *)input_line_pointer" identifier = (cast_expression "(byte *)input_line_pointer" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (goto_statement "goto LAB_00037040;" goto statement_identifier ;) })) })) (expression_statement "input_line_pointer = (char *)pbVar8;" (assignment_expression "input_line_pointer = (char *)pbVar8" identifier = (cast_expression "(char *)pbVar8" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (bVar2 == 0) goto LAB_00037439;" if (parenthesized_expression "(bVar2 == 0)" ( (binary_expression "bVar2 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00037439;" goto statement_identifier ;)) (expression_statement "pcVar9 = strchr(PTR_line_comment_chars_0007ffa0,(int)(char)bVar2);" (assignment_expression "pcVar9 = strchr(PTR_line_comment_chars_0007ffa0,(int)(char)bVar2)" identifier = (call_expression "strchr(PTR_line_comment_chars_0007ffa0,(int)(char)bVar2)" identifier (argument_list "(PTR_line_comment_chars_0007ffa0,(int)(char)bVar2)" ( identifier , (cast_expression "(int)(char)bVar2" ( (type_descriptor "int" primitive_type) ) (cast_expression "(char)bVar2" ( (type_descriptor "char" primitive_type) ) identifier)) )))) ;) (expression_statement "bVar18 = false;" (assignment_expression "bVar18 = false" identifier = false) ;) (expression_statement "bVar19 = pcVar9 == (char *)0x0;" (assignment_expression "bVar19 = pcVar9 == (char *)0x0" identifier = (binary_expression "pcVar9 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (if_statement "if (bVar19) goto LAB_00037439;" if (parenthesized_expression "(bVar19)" ( identifier )) (goto_statement "goto LAB_00037439;" goto statement_identifier ;)) (expression_statement "s = input_line_pointer;" (assignment_expression "s = input_line_pointer" identifier = identifier) ;) (expression_statement "iVar15 = 4;" (assignment_expression "iVar15 = 4" identifier = number_literal) ;) (expression_statement "pbVar8 = (byte *)input_line_pointer;" (assignment_expression "pbVar8 = (byte *)input_line_pointer" identifier = (cast_expression "(byte *)input_line_pointer" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "pbVar10 = &DAT_0005e3fa;" (assignment_expression "pbVar10 = &DAT_0005e3fa" identifier = (pointer_expression "&DAT_0005e3fa" & identifier)) ;) (do_statement "do {\n      if (iVar15 == 0) break;\n      iVar15 = iVar15 + -1;\n      bVar18 = *pbVar8 < *pbVar10;\n      bVar19 = *pbVar8 == *pbVar10;\n      pbVar8 = pbVar8 + (uint)bVar20 * -2 + 1;\n      pbVar10 = pbVar10 + (uint)bVar20 * -2 + 1;\n    } while (bVar19);" do (compound_statement "{\n      if (iVar15 == 0) break;\n      iVar15 = iVar15 + -1;\n      bVar18 = *pbVar8 < *pbVar10;\n      bVar19 = *pbVar8 == *pbVar10;\n      pbVar8 = pbVar8 + (uint)bVar20 * -2 + 1;\n      pbVar10 = pbVar10 + (uint)bVar20 * -2 + 1;\n    }" { (if_statement "if (iVar15 == 0) break;" if (parenthesized_expression "(iVar15 == 0)" ( (binary_expression "iVar15 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar15 = iVar15 + -1;" (assignment_expression "iVar15 = iVar15 + -1" identifier = (binary_expression "iVar15 + -1" identifier + number_literal)) ;) (expression_statement "bVar18 = *pbVar8 < *pbVar10;" (assignment_expression "bVar18 = *pbVar8 < *pbVar10" identifier = (binary_expression "*pbVar8 < *pbVar10" (pointer_expression "*pbVar8" * identifier) < (pointer_expression "*pbVar10" * identifier))) ;) (expression_statement "bVar19 = *pbVar8 == *pbVar10;" (assignment_expression "bVar19 = *pbVar8 == *pbVar10" identifier = (binary_expression "*pbVar8 == *pbVar10" (pointer_expression "*pbVar8" * identifier) == (pointer_expression "*pbVar10" * identifier))) ;) (expression_statement "pbVar8 = pbVar8 + (uint)bVar20 * -2 + 1;" (assignment_expression "pbVar8 = pbVar8 + (uint)bVar20 * -2 + 1" identifier = (binary_expression "pbVar8 + (uint)bVar20 * -2 + 1" (binary_expression "pbVar8 + (uint)bVar20 * -2" identifier + (binary_expression "(uint)bVar20 * -2" (cast_expression "(uint)bVar20" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar10 = pbVar10 + (uint)bVar20 * -2 + 1;" (assignment_expression "pbVar10 = pbVar10 + (uint)bVar20 * -2 + 1" identifier = (binary_expression "pbVar10 + (uint)bVar20 * -2 + 1" (binary_expression "pbVar10 + (uint)bVar20 * -2" identifier + (binary_expression "(uint)bVar20 * -2" (cast_expression "(uint)bVar20" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar19)" ( identifier )) ;) (if_statement "if ((!bVar18 && !bVar19) == bVar18) {\n      bump_line_counters();\n      pcVar9 = s + 4;\n      s = pcVar9;\n      pcVar12 = strstr(pcVar9,"#NO_APP\n");\n      if (pcVar12 == (char *)0x0) {\n        sVar14 = (int)buffer_limit - (int)pcVar9;\n        local_34 = (char *)xmalloc(sVar14 + 1);\n        memcpy(local_34,s,sVar14);\n        while (pcVar12 = input_scrub_next_buffer(&buffer), pcVar9 = buffer, pcVar12 != (char *)0x0)\n        {\n          input_line_pointer = buffer;\n          buffer_limit = pcVar12;\n          pcVar13 = strstr(buffer,"#NO_APP\n");\n          if (pcVar13 != (char *)0x0) {\n            sVar17 = (int)pcVar13 - (int)pcVar9;\n            sVar1 = sVar14 + sVar17;\n            local_34 = (char *)xrealloc(local_34,sVar1);\n            memcpy(local_34 + sVar14,buffer,sVar17);\n            input_line_pointer = pcVar13 + 8;\n            sVar14 = sVar1;\n            goto LAB_00037b57;\n          }\n          sVar17 = (int)pcVar12 - (int)pcVar9;\n          sVar1 = sVar14 + sVar17;\n          local_34 = (char *)xrealloc(local_34,sVar1);\n          memcpy(local_34 + sVar14,buffer,sVar17);\n          sVar14 = sVar1;\n        }\n        input_line_pointer = (char *)0x0;\nLAB_00037b57:\n        s = local_34;\n        pcVar12 = local_34 + sVar14;\n        scrub_string = local_34;\n      }\n      else {\n        input_line_pointer = pcVar12 + 8;\n        local_34 = (char *)0x0;\n        scrub_string = pcVar9;\n      }\n      iVar15 = (int)pcVar12 - (int)scrub_string;\n      scrub_string_end = pcVar12;\n      pcVar9 = (char *)xmalloc(iVar15);\n      pcVar12 = pcVar9;\n      while (pcVar13 = (char *)do_scrub_chars(scrub_from_string,pcVar9,\n                                              (size_t)(pcVar12 + (iVar15 - (int)pcVar9))),\n            pcVar12 + (iVar15 - (int)pcVar9) <= pcVar13) {\n        pcVar12 = (char *)xrealloc(pcVar12,iVar15 + 100);\n        pcVar9 = pcVar12 + iVar15;\n        iVar15 = iVar15 + 100;\n      }\n      pcVar9[(int)pcVar13] = '\0';\n      if (local_34 != (char *)0x0) {\n        free(local_34);\n      }\n      sVar14 = strlen(pcVar12);\n      sb_build(&sbuf,sVar14);\n      sb_add_buffer(&sbuf,pcVar12,sVar14);\n      input_scrub_include_sb(&sbuf,input_line_pointer,0);\n      sb_kill(&sbuf);\n      pcVar9 = input_scrub_next_buffer(&input_line_pointer);\n      buffer_limit = pcVar9;\n      free(pcVar12);\n    }\n    else {\n      ignore_rest_of_line();\n      pcVar9 = buffer_limit;\n    }" if (parenthesized_expression "((!bVar18 && !bVar19) == bVar18)" ( (binary_expression "(!bVar18 && !bVar19) == bVar18" (parenthesized_expression "(!bVar18 && !bVar19)" ( (binary_expression "!bVar18 && !bVar19" (unary_expression "!bVar18" ! identifier) && (unary_expression "!bVar19" ! identifier)) )) == identifier) )) (compound_statement "{\n      bump_line_counters();\n      pcVar9 = s + 4;\n      s = pcVar9;\n      pcVar12 = strstr(pcVar9,"#NO_APP\n");\n      if (pcVar12 == (char *)0x0) {\n        sVar14 = (int)buffer_limit - (int)pcVar9;\n        local_34 = (char *)xmalloc(sVar14 + 1);\n        memcpy(local_34,s,sVar14);\n        while (pcVar12 = input_scrub_next_buffer(&buffer), pcVar9 = buffer, pcVar12 != (char *)0x0)\n        {\n          input_line_pointer = buffer;\n          buffer_limit = pcVar12;\n          pcVar13 = strstr(buffer,"#NO_APP\n");\n          if (pcVar13 != (char *)0x0) {\n            sVar17 = (int)pcVar13 - (int)pcVar9;\n            sVar1 = sVar14 + sVar17;\n            local_34 = (char *)xrealloc(local_34,sVar1);\n            memcpy(local_34 + sVar14,buffer,sVar17);\n            input_line_pointer = pcVar13 + 8;\n            sVar14 = sVar1;\n            goto LAB_00037b57;\n          }\n          sVar17 = (int)pcVar12 - (int)pcVar9;\n          sVar1 = sVar14 + sVar17;\n          local_34 = (char *)xrealloc(local_34,sVar1);\n          memcpy(local_34 + sVar14,buffer,sVar17);\n          sVar14 = sVar1;\n        }\n        input_line_pointer = (char *)0x0;\nLAB_00037b57:\n        s = local_34;\n        pcVar12 = local_34 + sVar14;\n        scrub_string = local_34;\n      }\n      else {\n        input_line_pointer = pcVar12 + 8;\n        local_34 = (char *)0x0;\n        scrub_string = pcVar9;\n      }\n      iVar15 = (int)pcVar12 - (int)scrub_string;\n      scrub_string_end = pcVar12;\n      pcVar9 = (char *)xmalloc(iVar15);\n      pcVar12 = pcVar9;\n      while (pcVar13 = (char *)do_scrub_chars(scrub_from_string,pcVar9,\n                                              (size_t)(pcVar12 + (iVar15 - (int)pcVar9))),\n            pcVar12 + (iVar15 - (int)pcVar9) <= pcVar13) {\n        pcVar12 = (char *)xrealloc(pcVar12,iVar15 + 100);\n        pcVar9 = pcVar12 + iVar15;\n        iVar15 = iVar15 + 100;\n      }\n      pcVar9[(int)pcVar13] = '\0';\n      if (local_34 != (char *)0x0) {\n        free(local_34);\n      }\n      sVar14 = strlen(pcVar12);\n      sb_build(&sbuf,sVar14);\n      sb_add_buffer(&sbuf,pcVar12,sVar14);\n      input_scrub_include_sb(&sbuf,input_line_pointer,0);\n      sb_kill(&sbuf);\n      pcVar9 = input_scrub_next_buffer(&input_line_pointer);\n      buffer_limit = pcVar9;\n      free(pcVar12);\n    }" { (expression_statement "bump_line_counters();" (call_expression "bump_line_counters()" identifier (argument_list "()" ( ))) ;) (expression_statement "pcVar9 = s + 4;" (assignment_expression "pcVar9 = s + 4" identifier = (binary_expression "s + 4" identifier + number_literal)) ;) (expression_statement "s = pcVar9;" (assignment_expression "s = pcVar9" identifier = identifier) ;) (expression_statement "pcVar12 = strstr(pcVar9,"#NO_APP\n");" (assignment_expression "pcVar12 = strstr(pcVar9,"#NO_APP\n")" identifier = (call_expression "strstr(pcVar9,"#NO_APP\n")" identifier (argument_list "(pcVar9,"#NO_APP\n")" ( identifier , (string_literal ""#NO_APP\n"" " string_content escape_sequence ") )))) ;) (if_statement "if (pcVar12 == (char *)0x0) {\n        sVar14 = (int)buffer_limit - (int)pcVar9;\n        local_34 = (char *)xmalloc(sVar14 + 1);\n        memcpy(local_34,s,sVar14);\n        while (pcVar12 = input_scrub_next_buffer(&buffer), pcVar9 = buffer, pcVar12 != (char *)0x0)\n        {\n          input_line_pointer = buffer;\n          buffer_limit = pcVar12;\n          pcVar13 = strstr(buffer,"#NO_APP\n");\n          if (pcVar13 != (char *)0x0) {\n            sVar17 = (int)pcVar13 - (int)pcVar9;\n            sVar1 = sVar14 + sVar17;\n            local_34 = (char *)xrealloc(local_34,sVar1);\n            memcpy(local_34 + sVar14,buffer,sVar17);\n            input_line_pointer = pcVar13 + 8;\n            sVar14 = sVar1;\n            goto LAB_00037b57;\n          }\n          sVar17 = (int)pcVar12 - (int)pcVar9;\n          sVar1 = sVar14 + sVar17;\n          local_34 = (char *)xrealloc(local_34,sVar1);\n          memcpy(local_34 + sVar14,buffer,sVar17);\n          sVar14 = sVar1;\n        }\n        input_line_pointer = (char *)0x0;\nLAB_00037b57:\n        s = local_34;\n        pcVar12 = local_34 + sVar14;\n        scrub_string = local_34;\n      }\n      else {\n        input_line_pointer = pcVar12 + 8;\n        local_34 = (char *)0x0;\n        scrub_string = pcVar9;\n      }" if (parenthesized_expression "(pcVar12 == (char *)0x0)" ( (binary_expression "pcVar12 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        sVar14 = (int)buffer_limit - (int)pcVar9;\n        local_34 = (char *)xmalloc(sVar14 + 1);\n        memcpy(local_34,s,sVar14);\n        while (pcVar12 = input_scrub_next_buffer(&buffer), pcVar9 = buffer, pcVar12 != (char *)0x0)\n        {\n          input_line_pointer = buffer;\n          buffer_limit = pcVar12;\n          pcVar13 = strstr(buffer,"#NO_APP\n");\n          if (pcVar13 != (char *)0x0) {\n            sVar17 = (int)pcVar13 - (int)pcVar9;\n            sVar1 = sVar14 + sVar17;\n            local_34 = (char *)xrealloc(local_34,sVar1);\n            memcpy(local_34 + sVar14,buffer,sVar17);\n            input_line_pointer = pcVar13 + 8;\n            sVar14 = sVar1;\n            goto LAB_00037b57;\n          }\n          sVar17 = (int)pcVar12 - (int)pcVar9;\n          sVar1 = sVar14 + sVar17;\n          local_34 = (char *)xrealloc(local_34,sVar1);\n          memcpy(local_34 + sVar14,buffer,sVar17);\n          sVar14 = sVar1;\n        }\n        input_line_pointer = (char *)0x0;\nLAB_00037b57:\n        s = local_34;\n        pcVar12 = local_34 + sVar14;\n        scrub_string = local_34;\n      }" { (expression_statement "sVar14 = (int)buffer_limit - (int)pcVar9;" (assignment_expression "sVar14 = (int)buffer_limit - (int)pcVar9" identifier = (binary_expression "(int)buffer_limit - (int)pcVar9" (cast_expression "(int)buffer_limit" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pcVar9" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "local_34 = (char *)xmalloc(sVar14 + 1);" (assignment_expression "local_34 = (char *)xmalloc(sVar14 + 1)" identifier = (cast_expression "(char *)xmalloc(sVar14 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(sVar14 + 1)" identifier (argument_list "(sVar14 + 1)" ( (binary_expression "sVar14 + 1" identifier + number_literal) ))))) ;) (expression_statement "memcpy(local_34,s,sVar14);" (call_expression "memcpy(local_34,s,sVar14)" identifier (argument_list "(local_34,s,sVar14)" ( identifier , identifier , identifier ))) ;) (while_statement "while (pcVar12 = input_scrub_next_buffer(&buffer), pcVar9 = buffer, pcVar12 != (char *)0x0)\n        {\n          input_line_pointer = buffer;\n          buffer_limit = pcVar12;\n          pcVar13 = strstr(buffer,"#NO_APP\n");\n          if (pcVar13 != (char *)0x0) {\n            sVar17 = (int)pcVar13 - (int)pcVar9;\n            sVar1 = sVar14 + sVar17;\n            local_34 = (char *)xrealloc(local_34,sVar1);\n            memcpy(local_34 + sVar14,buffer,sVar17);\n            input_line_pointer = pcVar13 + 8;\n            sVar14 = sVar1;\n            goto LAB_00037b57;\n          }\n          sVar17 = (int)pcVar12 - (int)pcVar9;\n          sVar1 = sVar14 + sVar17;\n          local_34 = (char *)xrealloc(local_34,sVar1);\n          memcpy(local_34 + sVar14,buffer,sVar17);\n          sVar14 = sVar1;\n        }" while (parenthesized_expression "(pcVar12 = input_scrub_next_buffer(&buffer), pcVar9 = buffer, pcVar12 != (char *)0x0)" ( (comma_expression "pcVar12 = input_scrub_next_buffer(&buffer), pcVar9 = buffer, pcVar12 != (char *)0x0" (assignment_expression "pcVar12 = input_scrub_next_buffer(&buffer)" identifier = (call_expression "input_scrub_next_buffer(&buffer)" identifier (argument_list "(&buffer)" ( (pointer_expression "&buffer" & identifier) )))) , (comma_expression "pcVar9 = buffer, pcVar12 != (char *)0x0" (assignment_expression "pcVar9 = buffer" identifier = identifier) , (binary_expression "pcVar12 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)))) )) (compound_statement "{\n          input_line_pointer = buffer;\n          buffer_limit = pcVar12;\n          pcVar13 = strstr(buffer,"#NO_APP\n");\n          if (pcVar13 != (char *)0x0) {\n            sVar17 = (int)pcVar13 - (int)pcVar9;\n            sVar1 = sVar14 + sVar17;\n            local_34 = (char *)xrealloc(local_34,sVar1);\n            memcpy(local_34 + sVar14,buffer,sVar17);\n            input_line_pointer = pcVar13 + 8;\n            sVar14 = sVar1;\n            goto LAB_00037b57;\n          }\n          sVar17 = (int)pcVar12 - (int)pcVar9;\n          sVar1 = sVar14 + sVar17;\n          local_34 = (char *)xrealloc(local_34,sVar1);\n          memcpy(local_34 + sVar14,buffer,sVar17);\n          sVar14 = sVar1;\n        }" { (expression_statement "input_line_pointer = buffer;" (assignment_expression "input_line_pointer = buffer" identifier = identifier) ;) (expression_statement "buffer_limit = pcVar12;" (assignment_expression "buffer_limit = pcVar12" identifier = identifier) ;) (expression_statement "pcVar13 = strstr(buffer,"#NO_APP\n");" (assignment_expression "pcVar13 = strstr(buffer,"#NO_APP\n")" identifier = (call_expression "strstr(buffer,"#NO_APP\n")" identifier (argument_list "(buffer,"#NO_APP\n")" ( identifier , (string_literal ""#NO_APP\n"" " string_content escape_sequence ") )))) ;) (if_statement "if (pcVar13 != (char *)0x0) {\n            sVar17 = (int)pcVar13 - (int)pcVar9;\n            sVar1 = sVar14 + sVar17;\n            local_34 = (char *)xrealloc(local_34,sVar1);\n            memcpy(local_34 + sVar14,buffer,sVar17);\n            input_line_pointer = pcVar13 + 8;\n            sVar14 = sVar1;\n            goto LAB_00037b57;\n          }" if (parenthesized_expression "(pcVar13 != (char *)0x0)" ( (binary_expression "pcVar13 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            sVar17 = (int)pcVar13 - (int)pcVar9;\n            sVar1 = sVar14 + sVar17;\n            local_34 = (char *)xrealloc(local_34,sVar1);\n            memcpy(local_34 + sVar14,buffer,sVar17);\n            input_line_pointer = pcVar13 + 8;\n            sVar14 = sVar1;\n            goto LAB_00037b57;\n          }" { (expression_statement "sVar17 = (int)pcVar13 - (int)pcVar9;" (assignment_expression "sVar17 = (int)pcVar13 - (int)pcVar9" identifier = (binary_expression "(int)pcVar13 - (int)pcVar9" (cast_expression "(int)pcVar13" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pcVar9" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "sVar1 = sVar14 + sVar17;" (assignment_expression "sVar1 = sVar14 + sVar17" identifier = (binary_expression "sVar14 + sVar17" identifier + identifier)) ;) (expression_statement "local_34 = (char *)xrealloc(local_34,sVar1);" (assignment_expression "local_34 = (char *)xrealloc(local_34,sVar1)" identifier = (cast_expression "(char *)xrealloc(local_34,sVar1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xrealloc(local_34,sVar1)" identifier (argument_list "(local_34,sVar1)" ( identifier , identifier ))))) ;) (expression_statement "memcpy(local_34 + sVar14,buffer,sVar17);" (call_expression "memcpy(local_34 + sVar14,buffer,sVar17)" identifier (argument_list "(local_34 + sVar14,buffer,sVar17)" ( (binary_expression "local_34 + sVar14" identifier + identifier) , identifier , identifier ))) ;) (expression_statement "input_line_pointer = pcVar13 + 8;" (assignment_expression "input_line_pointer = pcVar13 + 8" identifier = (binary_expression "pcVar13 + 8" identifier + number_literal)) ;) (expression_statement "sVar14 = sVar1;" (assignment_expression "sVar14 = sVar1" identifier = identifier) ;) (goto_statement "goto LAB_00037b57;" goto statement_identifier ;) })) (expression_statement "sVar17 = (int)pcVar12 - (int)pcVar9;" (assignment_expression "sVar17 = (int)pcVar12 - (int)pcVar9" identifier = (binary_expression "(int)pcVar12 - (int)pcVar9" (cast_expression "(int)pcVar12" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pcVar9" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "sVar1 = sVar14 + sVar17;" (assignment_expression "sVar1 = sVar14 + sVar17" identifier = (binary_expression "sVar14 + sVar17" identifier + identifier)) ;) (expression_statement "local_34 = (char *)xrealloc(local_34,sVar1);" (assignment_expression "local_34 = (char *)xrealloc(local_34,sVar1)" identifier = (cast_expression "(char *)xrealloc(local_34,sVar1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xrealloc(local_34,sVar1)" identifier (argument_list "(local_34,sVar1)" ( identifier , identifier ))))) ;) (expression_statement "memcpy(local_34 + sVar14,buffer,sVar17);" (call_expression "memcpy(local_34 + sVar14,buffer,sVar17)" identifier (argument_list "(local_34 + sVar14,buffer,sVar17)" ( (binary_expression "local_34 + sVar14" identifier + identifier) , identifier , identifier ))) ;) (expression_statement "sVar14 = sVar1;" (assignment_expression "sVar14 = sVar1" identifier = identifier) ;) })) (expression_statement "input_line_pointer = (char *)0x0;" (assignment_expression "input_line_pointer = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_00037b57:\n        s = local_34;" statement_identifier : (expression_statement "s = local_34;" (assignment_expression "s = local_34" identifier = identifier) ;)) (expression_statement "pcVar12 = local_34 + sVar14;" (assignment_expression "pcVar12 = local_34 + sVar14" identifier = (binary_expression "local_34 + sVar14" identifier + identifier)) ;) (expression_statement "scrub_string = local_34;" (assignment_expression "scrub_string = local_34" identifier = identifier) ;) }) (else_clause "else {\n        input_line_pointer = pcVar12 + 8;\n        local_34 = (char *)0x0;\n        scrub_string = pcVar9;\n      }" else (compound_statement "{\n        input_line_pointer = pcVar12 + 8;\n        local_34 = (char *)0x0;\n        scrub_string = pcVar9;\n      }" { (expression_statement "input_line_pointer = pcVar12 + 8;" (assignment_expression "input_line_pointer = pcVar12 + 8" identifier = (binary_expression "pcVar12 + 8" identifier + number_literal)) ;) (expression_statement "local_34 = (char *)0x0;" (assignment_expression "local_34 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "scrub_string = pcVar9;" (assignment_expression "scrub_string = pcVar9" identifier = identifier) ;) }))) (expression_statement "iVar15 = (int)pcVar12 - (int)scrub_string;" (assignment_expression "iVar15 = (int)pcVar12 - (int)scrub_string" identifier = (binary_expression "(int)pcVar12 - (int)scrub_string" (cast_expression "(int)pcVar12" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)scrub_string" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "scrub_string_end = pcVar12;" (assignment_expression "scrub_string_end = pcVar12" identifier = identifier) ;) (expression_statement "pcVar9 = (char *)xmalloc(iVar15);" (assignment_expression "pcVar9 = (char *)xmalloc(iVar15)" identifier = (cast_expression "(char *)xmalloc(iVar15)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(iVar15)" identifier (argument_list "(iVar15)" ( identifier ))))) ;) (expression_statement "pcVar12 = pcVar9;" (assignment_expression "pcVar12 = pcVar9" identifier = identifier) ;) (while_statement "while (pcVar13 = (char *)do_scrub_chars(scrub_from_string,pcVar9,\n                                              (size_t)(pcVar12 + (iVar15 - (int)pcVar9))),\n            pcVar12 + (iVar15 - (int)pcVar9) <= pcVar13) {\n        pcVar12 = (char *)xrealloc(pcVar12,iVar15 + 100);\n        pcVar9 = pcVar12 + iVar15;\n        iVar15 = iVar15 + 100;\n      }" while (parenthesized_expression "(pcVar13 = (char *)do_scrub_chars(scrub_from_string,pcVar9,\n                                              (size_t)(pcVar12 + (iVar15 - (int)pcVar9))),\n            pcVar12 + (iVar15 - (int)pcVar9) <= pcVar13)" ( (comma_expression "pcVar13 = (char *)do_scrub_chars(scrub_from_string,pcVar9,\n                                              (size_t)(pcVar12 + (iVar15 - (int)pcVar9))),\n            pcVar12 + (iVar15 - (int)pcVar9) <= pcVar13" (assignment_expression "pcVar13 = (char *)do_scrub_chars(scrub_from_string,pcVar9,\n                                              (size_t)(pcVar12 + (iVar15 - (int)pcVar9)))" identifier = (cast_expression "(char *)do_scrub_chars(scrub_from_string,pcVar9,\n                                              (size_t)(pcVar12 + (iVar15 - (int)pcVar9)))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "do_scrub_chars(scrub_from_string,pcVar9,\n                                              (size_t)(pcVar12 + (iVar15 - (int)pcVar9)))" identifier (argument_list "(scrub_from_string,pcVar9,\n                                              (size_t)(pcVar12 + (iVar15 - (int)pcVar9)))" ( identifier , identifier , (cast_expression "(size_t)(pcVar12 + (iVar15 - (int)pcVar9))" ( (type_descriptor "size_t" primitive_type) ) (parenthesized_expression "(pcVar12 + (iVar15 - (int)pcVar9))" ( (binary_expression "pcVar12 + (iVar15 - (int)pcVar9)" identifier + (parenthesized_expression "(iVar15 - (int)pcVar9)" ( (binary_expression "iVar15 - (int)pcVar9" identifier - (cast_expression "(int)pcVar9" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ))) ))))) , (binary_expression "pcVar12 + (iVar15 - (int)pcVar9) <= pcVar13" (binary_expression "pcVar12 + (iVar15 - (int)pcVar9)" identifier + (parenthesized_expression "(iVar15 - (int)pcVar9)" ( (binary_expression "iVar15 - (int)pcVar9" identifier - (cast_expression "(int)pcVar9" ( (type_descriptor "int" primitive_type) ) identifier)) ))) <= identifier)) )) (compound_statement "{\n        pcVar12 = (char *)xrealloc(pcVar12,iVar15 + 100);\n        pcVar9 = pcVar12 + iVar15;\n        iVar15 = iVar15 + 100;\n      }" { (expression_statement "pcVar12 = (char *)xrealloc(pcVar12,iVar15 + 100);" (assignment_expression "pcVar12 = (char *)xrealloc(pcVar12,iVar15 + 100)" identifier = (cast_expression "(char *)xrealloc(pcVar12,iVar15 + 100)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xrealloc(pcVar12,iVar15 + 100)" identifier (argument_list "(pcVar12,iVar15 + 100)" ( identifier , (binary_expression "iVar15 + 100" identifier + number_literal) ))))) ;) (expression_statement "pcVar9 = pcVar12 + iVar15;" (assignment_expression "pcVar9 = pcVar12 + iVar15" identifier = (binary_expression "pcVar12 + iVar15" identifier + identifier)) ;) (expression_statement "iVar15 = iVar15 + 100;" (assignment_expression "iVar15 = iVar15 + 100" identifier = (binary_expression "iVar15 + 100" identifier + number_literal)) ;) })) (expression_statement "pcVar9[(int)pcVar13] = '\0';" (assignment_expression "pcVar9[(int)pcVar13] = '\0'" (subscript_expression "pcVar9[(int)pcVar13]" identifier [ (cast_expression "(int)pcVar13" ( (type_descriptor "int" primitive_type) ) identifier) ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (if_statement "if (local_34 != (char *)0x0) {\n        free(local_34);\n      }" if (parenthesized_expression "(local_34 != (char *)0x0)" ( (binary_expression "local_34 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        free(local_34);\n      }" { (expression_statement "free(local_34);" (call_expression "free(local_34)" identifier (argument_list "(local_34)" ( identifier ))) ;) })) (expression_statement "sVar14 = strlen(pcVar12);" (assignment_expression "sVar14 = strlen(pcVar12)" identifier = (call_expression "strlen(pcVar12)" identifier (argument_list "(pcVar12)" ( identifier )))) ;) (expression_statement "sb_build(&sbuf,sVar14);" (call_expression "sb_build(&sbuf,sVar14)" identifier (argument_list "(&sbuf,sVar14)" ( (pointer_expression "&sbuf" & identifier) , identifier ))) ;) (expression_statement "sb_add_buffer(&sbuf,pcVar12,sVar14);" (call_expression "sb_add_buffer(&sbuf,pcVar12,sVar14)" identifier (argument_list "(&sbuf,pcVar12,sVar14)" ( (pointer_expression "&sbuf" & identifier) , identifier , identifier ))) ;) (expression_statement "input_scrub_include_sb(&sbuf,input_line_pointer,0);" (call_expression "input_scrub_include_sb(&sbuf,input_line_pointer,0)" identifier (argument_list "(&sbuf,input_line_pointer,0)" ( (pointer_expression "&sbuf" & identifier) , identifier , number_literal ))) ;) (expression_statement "sb_kill(&sbuf);" (call_expression "sb_kill(&sbuf)" identifier (argument_list "(&sbuf)" ( (pointer_expression "&sbuf" & identifier) ))) ;) (expression_statement "pcVar9 = input_scrub_next_buffer(&input_line_pointer);" (assignment_expression "pcVar9 = input_scrub_next_buffer(&input_line_pointer)" identifier = (call_expression "input_scrub_next_buffer(&input_line_pointer)" identifier (argument_list "(&input_line_pointer)" ( (pointer_expression "&input_line_pointer" & identifier) )))) ;) (expression_statement "buffer_limit = pcVar9;" (assignment_expression "buffer_limit = pcVar9" identifier = identifier) ;) (expression_statement "free(pcVar12);" (call_expression "free(pcVar12)" identifier (argument_list "(pcVar12)" ( identifier ))) ;) }) (else_clause "else {\n      ignore_rest_of_line();\n      pcVar9 = buffer_limit;\n    }" else (compound_statement "{\n      ignore_rest_of_line();\n      pcVar9 = buffer_limit;\n    }" { (expression_statement "ignore_rest_of_line();" (call_expression "ignore_rest_of_line()" identifier (argument_list "()" ( ))) ;) (expression_statement "pcVar9 = buffer_limit;" (assignment_expression "pcVar9 = buffer_limit" identifier = identifier) ;) }))) (if_statement "if (pcVar9 <= input_line_pointer) goto LAB_00036ffa;" if (parenthesized_expression "(pcVar9 <= input_line_pointer)" ( (binary_expression "pcVar9 <= input_line_pointer" identifier <= identifier) )) (goto_statement "goto LAB_00036ffa;" goto statement_identifier ;)) (goto_statement "goto LAB_00037044;" goto statement_identifier ;) }))) (expression_statement "iVar15 = ignore_input();" (assignment_expression "iVar15 = ignore_input()" identifier = (call_expression "ignore_input()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar15 != 0) {\n    pcVar9 = _find_end_of_line(input_line_pointer + -1,0,0,0);\n    if (input_line_pointer <= buffer_limit) goto LAB_00037376;\n    goto LAB_0003737c;\n  }" if (parenthesized_expression "(iVar15 != 0)" ( (binary_expression "iVar15 != 0" identifier != number_literal) )) (compound_statement "{\n    pcVar9 = _find_end_of_line(input_line_pointer + -1,0,0,0);\n    if (input_line_pointer <= buffer_limit) goto LAB_00037376;\n    goto LAB_0003737c;\n  }" { (expression_statement "pcVar9 = _find_end_of_line(input_line_pointer + -1,0,0,0);" (assignment_expression "pcVar9 = _find_end_of_line(input_line_pointer + -1,0,0,0)" identifier = (call_expression "_find_end_of_line(input_line_pointer + -1,0,0,0)" identifier (argument_list "(input_line_pointer + -1,0,0,0)" ( (binary_expression "input_line_pointer + -1" identifier + number_literal) , number_literal , number_literal , number_literal )))) ;) (if_statement "if (input_line_pointer <= buffer_limit) goto LAB_00037376;" if (parenthesized_expression "(input_line_pointer <= buffer_limit)" ( (binary_expression "input_line_pointer <= buffer_limit" identifier <= identifier) )) (goto_statement "goto LAB_00037376;" goto statement_identifier ;)) (goto_statement "goto LAB_0003737c;" goto statement_identifier ;) })) (expression_statement "input_line_pointer = input_line_pointer + -1;" (assignment_expression "input_line_pointer = input_line_pointer + -1" identifier = (binary_expression "input_line_pointer + -1" identifier + number_literal)) ;) (expression_statement "c = get_symbol_name(&s);" (assignment_expression "c = get_symbol_name(&s)" identifier = (call_expression "get_symbol_name(&s)" identifier (argument_list "(&s)" ( (pointer_expression "&s" & identifier) )))) ;) (expression_statement "pbVar8 = (byte *)s;" (assignment_expression "pbVar8 = (byte *)s" identifier = (cast_expression "(byte *)s" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "iVar15 = 1;" (assignment_expression "iVar15 = 1" identifier = number_literal) ;) (expression_statement "cVar7 = c;" (assignment_expression "cVar7 = c" identifier = identifier) ;) (if_statement "if (c == '\"') {\n    cVar7 = input_line_pointer[1];\n    iVar15 = 2;\n  }" if (parenthesized_expression "(c == '\"')" ( (binary_expression "c == '\"'" identifier == (char_literal "'\"'" ' escape_sequence ')) )) (compound_statement "{\n    cVar7 = input_line_pointer[1];\n    iVar15 = 2;\n  }" { (expression_statement "cVar7 = input_line_pointer[1];" (assignment_expression "cVar7 = input_line_pointer[1]" identifier = (subscript_expression "input_line_pointer[1]" identifier [ number_literal ])) ;) (expression_statement "iVar15 = 2;" (assignment_expression "iVar15 = 2" identifier = number_literal) ;) })) (expression_statement "pcVar9 = input_line_pointer + iVar15;" (assignment_expression "pcVar9 = input_line_pointer + iVar15" identifier = (binary_expression "input_line_pointer + iVar15" identifier + identifier)) ;) (if_statement "if (cVar7 == ':') {\n    line_label = colon(s);\n    restore_line_pointer(c);\n    pbVar8 = (byte *)(input_line_pointer + 1);\n    if (input_line_pointer[1] == ' ') {\n      pbVar8 = (byte *)(input_line_pointer + 2);\n    }\n    goto LAB_00037040;\n  }" if (parenthesized_expression "(cVar7 == ':')" ( (binary_expression "cVar7 == ':'" identifier == (char_literal "':'" ' character ')) )) (compound_statement "{\n    line_label = colon(s);\n    restore_line_pointer(c);\n    pbVar8 = (byte *)(input_line_pointer + 1);\n    if (input_line_pointer[1] == ' ') {\n      pbVar8 = (byte *)(input_line_pointer + 2);\n    }\n    goto LAB_00037040;\n  }" { (expression_statement "line_label = colon(s);" (assignment_expression "line_label = colon(s)" identifier = (call_expression "colon(s)" identifier (argument_list "(s)" ( identifier )))) ;) (expression_statement "restore_line_pointer(c);" (call_expression "restore_line_pointer(c)" identifier (argument_list "(c)" ( identifier ))) ;) (expression_statement "pbVar8 = (byte *)(input_line_pointer + 1);" (assignment_expression "pbVar8 = (byte *)(input_line_pointer + 1)" identifier = (cast_expression "(byte *)(input_line_pointer + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(input_line_pointer + 1)" ( (binary_expression "input_line_pointer + 1" identifier + number_literal) )))) ;) (if_statement "if (input_line_pointer[1] == ' ') {\n      pbVar8 = (byte *)(input_line_pointer + 2);\n    }" if (parenthesized_expression "(input_line_pointer[1] == ' ')" ( (binary_expression "input_line_pointer[1] == ' '" (subscript_expression "input_line_pointer[1]" identifier [ number_literal ]) == (char_literal "' '" ' character ')) )) (compound_statement "{\n      pbVar8 = (byte *)(input_line_pointer + 2);\n    }" { (expression_statement "pbVar8 = (byte *)(input_line_pointer + 2);" (assignment_expression "pbVar8 = (byte *)(input_line_pointer + 2)" identifier = (cast_expression "(byte *)(input_line_pointer + 2)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(input_line_pointer + 2)" ( (binary_expression "input_line_pointer + 2" identifier + number_literal) )))) ;) })) (goto_statement "goto LAB_00037040;" goto statement_identifier ;) })) (if_statement "if (cVar7 == '=') {\n    if (*pcVar9 == '=') goto LAB_00037691;\nLAB_0003746c:\n    iVar15 = 1;\n  }\n  else {\n    if (((cVar7 != ' ') && (cVar7 != '\t')) || (*pcVar9 != '=')) {\n      strncpy(original_case_string,s,0x80);\n      puVar6 = PTR__sch_tolower_0007ffcc;\n      original_case_string[0x7f] = 0;\n      bVar2 = *pbVar8;\n      if (bVar2 == 0) goto LAB_0003726e;\n      do {\n        *pbVar8 = puVar6[bVar2];\n        bVar2 = pbVar8[1];\n        pbVar8 = pbVar8 + 1;\n      } while (bVar2 != 0);\n      if (*s == '.') {\n        pvVar11 = hash_find(po_hash,s + 1);\n        if ((pvVar11 == (void *)0x0) ||\n           (pcVar5 = *(code **)((int)pvVar11 + 4), pcVar5 == (code *)0x0)) {\n          if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          pcVar12 = input_line_pointer;\n          restore_line_pointer(c);\n          ignore_rest_of_line();\n          cVar7 = input_line_pointer[-1];\n          pcVar9 = input_line_pointer + -1;\n          input_line_pointer = input_line_pointer + -1;\n          *pcVar9 = '\0';\n          if ((macro_defined == 0) ||\n             (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {\n            pcVar9 = s;\n            *pcVar12 = '\0';\n            pcVar12 = (char *)dcgettext(0,"unknown pseudo-op: `%s\'");\n            as_bad(pcVar12,pcVar9);\n            pcVar9 = input_line_pointer + 1;\n            *input_line_pointer = cVar7;\n            input_line_pointer = pcVar9;\n            pbVar8 = (byte *)input_line_pointer;\n          }\n        }\n        else {\n          if ((mri_pending_align != 0) &&\n             ((((pcVar5 != s_space && (pcVar5 != cons)) || (*(int *)((int)pvVar11 + 8) != 1)) &&\n              (((((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)\n                && pcVar5 != (code *)PTR_s_endif_0007ff5c) && pcVar5 != s_globl &&\n               (pcVar5 != s_ignore)))))) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          cVar7 = restore_line_pointer(c);\n          if ((cVar7 == ' ') || (cVar7 == '\t')) {\n            input_line_pointer = input_line_pointer + 1;\n          }\n          (**(code **)((int)pvVar11 + 4))(*(undefined4 *)((int)pvVar11 + 8));\n          pbVar8 = (byte *)input_line_pointer;\n          if (*(code **)((int)pvVar11 + 4) == s_end) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        restore_line_pointer(c);\n        input_line_pointer = _find_end_of_line(input_line_pointer,0,1,0);\n        cVar7 = *input_line_pointer;\n        *input_line_pointer = '\0';\n        generate_lineno_debug();\n        if ((macro_defined == 0) ||\n           (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {\n          if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          md_assemble(s);\n          if (input_line_pointer == (char *)0x0) {\n            pcVar9 = (char *)dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            as_fatal(pcVar9);\n          }\n          pcVar9 = input_line_pointer + 1;\n          *input_line_pointer = cVar7;\n          input_line_pointer = pcVar9;\n          pbVar8 = (byte *)input_line_pointer;\n        }\n      }\n      goto LAB_00037040;\n    }\n    if (pcVar9[1] != '=') goto LAB_0003746c;\nLAB_00037691:\n    iVar15 = -1;\n  }" if (parenthesized_expression "(cVar7 == '=')" ( (binary_expression "cVar7 == '='" identifier == (char_literal "'='" ' character ')) )) (compound_statement "{\n    if (*pcVar9 == '=') goto LAB_00037691;\nLAB_0003746c:\n    iVar15 = 1;\n  }" { (if_statement "if (*pcVar9 == '=') goto LAB_00037691;" if (parenthesized_expression "(*pcVar9 == '=')" ( (binary_expression "*pcVar9 == '='" (pointer_expression "*pcVar9" * identifier) == (char_literal "'='" ' character ')) )) (goto_statement "goto LAB_00037691;" goto statement_identifier ;)) (labeled_statement "LAB_0003746c:\n    iVar15 = 1;" statement_identifier : (expression_statement "iVar15 = 1;" (assignment_expression "iVar15 = 1" identifier = number_literal) ;)) }) (else_clause "else {\n    if (((cVar7 != ' ') && (cVar7 != '\t')) || (*pcVar9 != '=')) {\n      strncpy(original_case_string,s,0x80);\n      puVar6 = PTR__sch_tolower_0007ffcc;\n      original_case_string[0x7f] = 0;\n      bVar2 = *pbVar8;\n      if (bVar2 == 0) goto LAB_0003726e;\n      do {\n        *pbVar8 = puVar6[bVar2];\n        bVar2 = pbVar8[1];\n        pbVar8 = pbVar8 + 1;\n      } while (bVar2 != 0);\n      if (*s == '.') {\n        pvVar11 = hash_find(po_hash,s + 1);\n        if ((pvVar11 == (void *)0x0) ||\n           (pcVar5 = *(code **)((int)pvVar11 + 4), pcVar5 == (code *)0x0)) {\n          if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          pcVar12 = input_line_pointer;\n          restore_line_pointer(c);\n          ignore_rest_of_line();\n          cVar7 = input_line_pointer[-1];\n          pcVar9 = input_line_pointer + -1;\n          input_line_pointer = input_line_pointer + -1;\n          *pcVar9 = '\0';\n          if ((macro_defined == 0) ||\n             (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {\n            pcVar9 = s;\n            *pcVar12 = '\0';\n            pcVar12 = (char *)dcgettext(0,"unknown pseudo-op: `%s\'");\n            as_bad(pcVar12,pcVar9);\n            pcVar9 = input_line_pointer + 1;\n            *input_line_pointer = cVar7;\n            input_line_pointer = pcVar9;\n            pbVar8 = (byte *)input_line_pointer;\n          }\n        }\n        else {\n          if ((mri_pending_align != 0) &&\n             ((((pcVar5 != s_space && (pcVar5 != cons)) || (*(int *)((int)pvVar11 + 8) != 1)) &&\n              (((((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)\n                && pcVar5 != (code *)PTR_s_endif_0007ff5c) && pcVar5 != s_globl &&\n               (pcVar5 != s_ignore)))))) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          cVar7 = restore_line_pointer(c);\n          if ((cVar7 == ' ') || (cVar7 == '\t')) {\n            input_line_pointer = input_line_pointer + 1;\n          }\n          (**(code **)((int)pvVar11 + 4))(*(undefined4 *)((int)pvVar11 + 8));\n          pbVar8 = (byte *)input_line_pointer;\n          if (*(code **)((int)pvVar11 + 4) == s_end) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        restore_line_pointer(c);\n        input_line_pointer = _find_end_of_line(input_line_pointer,0,1,0);\n        cVar7 = *input_line_pointer;\n        *input_line_pointer = '\0';\n        generate_lineno_debug();\n        if ((macro_defined == 0) ||\n           (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {\n          if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          md_assemble(s);\n          if (input_line_pointer == (char *)0x0) {\n            pcVar9 = (char *)dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            as_fatal(pcVar9);\n          }\n          pcVar9 = input_line_pointer + 1;\n          *input_line_pointer = cVar7;\n          input_line_pointer = pcVar9;\n          pbVar8 = (byte *)input_line_pointer;\n        }\n      }\n      goto LAB_00037040;\n    }\n    if (pcVar9[1] != '=') goto LAB_0003746c;\nLAB_00037691:\n    iVar15 = -1;\n  }" else (compound_statement "{\n    if (((cVar7 != ' ') && (cVar7 != '\t')) || (*pcVar9 != '=')) {\n      strncpy(original_case_string,s,0x80);\n      puVar6 = PTR__sch_tolower_0007ffcc;\n      original_case_string[0x7f] = 0;\n      bVar2 = *pbVar8;\n      if (bVar2 == 0) goto LAB_0003726e;\n      do {\n        *pbVar8 = puVar6[bVar2];\n        bVar2 = pbVar8[1];\n        pbVar8 = pbVar8 + 1;\n      } while (bVar2 != 0);\n      if (*s == '.') {\n        pvVar11 = hash_find(po_hash,s + 1);\n        if ((pvVar11 == (void *)0x0) ||\n           (pcVar5 = *(code **)((int)pvVar11 + 4), pcVar5 == (code *)0x0)) {\n          if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          pcVar12 = input_line_pointer;\n          restore_line_pointer(c);\n          ignore_rest_of_line();\n          cVar7 = input_line_pointer[-1];\n          pcVar9 = input_line_pointer + -1;\n          input_line_pointer = input_line_pointer + -1;\n          *pcVar9 = '\0';\n          if ((macro_defined == 0) ||\n             (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {\n            pcVar9 = s;\n            *pcVar12 = '\0';\n            pcVar12 = (char *)dcgettext(0,"unknown pseudo-op: `%s\'");\n            as_bad(pcVar12,pcVar9);\n            pcVar9 = input_line_pointer + 1;\n            *input_line_pointer = cVar7;\n            input_line_pointer = pcVar9;\n            pbVar8 = (byte *)input_line_pointer;\n          }\n        }\n        else {\n          if ((mri_pending_align != 0) &&\n             ((((pcVar5 != s_space && (pcVar5 != cons)) || (*(int *)((int)pvVar11 + 8) != 1)) &&\n              (((((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)\n                && pcVar5 != (code *)PTR_s_endif_0007ff5c) && pcVar5 != s_globl &&\n               (pcVar5 != s_ignore)))))) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          cVar7 = restore_line_pointer(c);\n          if ((cVar7 == ' ') || (cVar7 == '\t')) {\n            input_line_pointer = input_line_pointer + 1;\n          }\n          (**(code **)((int)pvVar11 + 4))(*(undefined4 *)((int)pvVar11 + 8));\n          pbVar8 = (byte *)input_line_pointer;\n          if (*(code **)((int)pvVar11 + 4) == s_end) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        restore_line_pointer(c);\n        input_line_pointer = _find_end_of_line(input_line_pointer,0,1,0);\n        cVar7 = *input_line_pointer;\n        *input_line_pointer = '\0';\n        generate_lineno_debug();\n        if ((macro_defined == 0) ||\n           (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {\n          if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          md_assemble(s);\n          if (input_line_pointer == (char *)0x0) {\n            pcVar9 = (char *)dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            as_fatal(pcVar9);\n          }\n          pcVar9 = input_line_pointer + 1;\n          *input_line_pointer = cVar7;\n          input_line_pointer = pcVar9;\n          pbVar8 = (byte *)input_line_pointer;\n        }\n      }\n      goto LAB_00037040;\n    }\n    if (pcVar9[1] != '=') goto LAB_0003746c;\nLAB_00037691:\n    iVar15 = -1;\n  }" { (if_statement "if (((cVar7 != ' ') && (cVar7 != '\t')) || (*pcVar9 != '=')) {\n      strncpy(original_case_string,s,0x80);\n      puVar6 = PTR__sch_tolower_0007ffcc;\n      original_case_string[0x7f] = 0;\n      bVar2 = *pbVar8;\n      if (bVar2 == 0) goto LAB_0003726e;\n      do {\n        *pbVar8 = puVar6[bVar2];\n        bVar2 = pbVar8[1];\n        pbVar8 = pbVar8 + 1;\n      } while (bVar2 != 0);\n      if (*s == '.') {\n        pvVar11 = hash_find(po_hash,s + 1);\n        if ((pvVar11 == (void *)0x0) ||\n           (pcVar5 = *(code **)((int)pvVar11 + 4), pcVar5 == (code *)0x0)) {\n          if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          pcVar12 = input_line_pointer;\n          restore_line_pointer(c);\n          ignore_rest_of_line();\n          cVar7 = input_line_pointer[-1];\n          pcVar9 = input_line_pointer + -1;\n          input_line_pointer = input_line_pointer + -1;\n          *pcVar9 = '\0';\n          if ((macro_defined == 0) ||\n             (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {\n            pcVar9 = s;\n            *pcVar12 = '\0';\n            pcVar12 = (char *)dcgettext(0,"unknown pseudo-op: `%s\'");\n            as_bad(pcVar12,pcVar9);\n            pcVar9 = input_line_pointer + 1;\n            *input_line_pointer = cVar7;\n            input_line_pointer = pcVar9;\n            pbVar8 = (byte *)input_line_pointer;\n          }\n        }\n        else {\n          if ((mri_pending_align != 0) &&\n             ((((pcVar5 != s_space && (pcVar5 != cons)) || (*(int *)((int)pvVar11 + 8) != 1)) &&\n              (((((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)\n                && pcVar5 != (code *)PTR_s_endif_0007ff5c) && pcVar5 != s_globl &&\n               (pcVar5 != s_ignore)))))) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          cVar7 = restore_line_pointer(c);\n          if ((cVar7 == ' ') || (cVar7 == '\t')) {\n            input_line_pointer = input_line_pointer + 1;\n          }\n          (**(code **)((int)pvVar11 + 4))(*(undefined4 *)((int)pvVar11 + 8));\n          pbVar8 = (byte *)input_line_pointer;\n          if (*(code **)((int)pvVar11 + 4) == s_end) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        restore_line_pointer(c);\n        input_line_pointer = _find_end_of_line(input_line_pointer,0,1,0);\n        cVar7 = *input_line_pointer;\n        *input_line_pointer = '\0';\n        generate_lineno_debug();\n        if ((macro_defined == 0) ||\n           (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {\n          if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          md_assemble(s);\n          if (input_line_pointer == (char *)0x0) {\n            pcVar9 = (char *)dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            as_fatal(pcVar9);\n          }\n          pcVar9 = input_line_pointer + 1;\n          *input_line_pointer = cVar7;\n          input_line_pointer = pcVar9;\n          pbVar8 = (byte *)input_line_pointer;\n        }\n      }\n      goto LAB_00037040;\n    }" if (parenthesized_expression "(((cVar7 != ' ') && (cVar7 != '\t')) || (*pcVar9 != '='))" ( (binary_expression "((cVar7 != ' ') && (cVar7 != '\t')) || (*pcVar9 != '=')" (parenthesized_expression "((cVar7 != ' ') && (cVar7 != '\t'))" ( (binary_expression "(cVar7 != ' ') && (cVar7 != '\t')" (parenthesized_expression "(cVar7 != ' ')" ( (binary_expression "cVar7 != ' '" identifier != (char_literal "' '" ' character ')) )) && (parenthesized_expression "(cVar7 != '\t')" ( (binary_expression "cVar7 != '\t'" identifier != (char_literal "'\t'" ' escape_sequence ')) ))) )) || (parenthesized_expression "(*pcVar9 != '=')" ( (binary_expression "*pcVar9 != '='" (pointer_expression "*pcVar9" * identifier) != (char_literal "'='" ' character ')) ))) )) (compound_statement "{\n      strncpy(original_case_string,s,0x80);\n      puVar6 = PTR__sch_tolower_0007ffcc;\n      original_case_string[0x7f] = 0;\n      bVar2 = *pbVar8;\n      if (bVar2 == 0) goto LAB_0003726e;\n      do {\n        *pbVar8 = puVar6[bVar2];\n        bVar2 = pbVar8[1];\n        pbVar8 = pbVar8 + 1;\n      } while (bVar2 != 0);\n      if (*s == '.') {\n        pvVar11 = hash_find(po_hash,s + 1);\n        if ((pvVar11 == (void *)0x0) ||\n           (pcVar5 = *(code **)((int)pvVar11 + 4), pcVar5 == (code *)0x0)) {\n          if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          pcVar12 = input_line_pointer;\n          restore_line_pointer(c);\n          ignore_rest_of_line();\n          cVar7 = input_line_pointer[-1];\n          pcVar9 = input_line_pointer + -1;\n          input_line_pointer = input_line_pointer + -1;\n          *pcVar9 = '\0';\n          if ((macro_defined == 0) ||\n             (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {\n            pcVar9 = s;\n            *pcVar12 = '\0';\n            pcVar12 = (char *)dcgettext(0,"unknown pseudo-op: `%s\'");\n            as_bad(pcVar12,pcVar9);\n            pcVar9 = input_line_pointer + 1;\n            *input_line_pointer = cVar7;\n            input_line_pointer = pcVar9;\n            pbVar8 = (byte *)input_line_pointer;\n          }\n        }\n        else {\n          if ((mri_pending_align != 0) &&\n             ((((pcVar5 != s_space && (pcVar5 != cons)) || (*(int *)((int)pvVar11 + 8) != 1)) &&\n              (((((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)\n                && pcVar5 != (code *)PTR_s_endif_0007ff5c) && pcVar5 != s_globl &&\n               (pcVar5 != s_ignore)))))) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          cVar7 = restore_line_pointer(c);\n          if ((cVar7 == ' ') || (cVar7 == '\t')) {\n            input_line_pointer = input_line_pointer + 1;\n          }\n          (**(code **)((int)pvVar11 + 4))(*(undefined4 *)((int)pvVar11 + 8));\n          pbVar8 = (byte *)input_line_pointer;\n          if (*(code **)((int)pvVar11 + 4) == s_end) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        restore_line_pointer(c);\n        input_line_pointer = _find_end_of_line(input_line_pointer,0,1,0);\n        cVar7 = *input_line_pointer;\n        *input_line_pointer = '\0';\n        generate_lineno_debug();\n        if ((macro_defined == 0) ||\n           (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {\n          if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          md_assemble(s);\n          if (input_line_pointer == (char *)0x0) {\n            pcVar9 = (char *)dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            as_fatal(pcVar9);\n          }\n          pcVar9 = input_line_pointer + 1;\n          *input_line_pointer = cVar7;\n          input_line_pointer = pcVar9;\n          pbVar8 = (byte *)input_line_pointer;\n        }\n      }\n      goto LAB_00037040;\n    }" { (expression_statement "strncpy(original_case_string,s,0x80);" (call_expression "strncpy(original_case_string,s,0x80)" identifier (argument_list "(original_case_string,s,0x80)" ( identifier , identifier , number_literal ))) ;) (expression_statement "puVar6 = PTR__sch_tolower_0007ffcc;" (assignment_expression "puVar6 = PTR__sch_tolower_0007ffcc" identifier = identifier) ;) (expression_statement "original_case_string[0x7f] = 0;" (assignment_expression "original_case_string[0x7f] = 0" (subscript_expression "original_case_string[0x7f]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "bVar2 = *pbVar8;" (assignment_expression "bVar2 = *pbVar8" identifier = (pointer_expression "*pbVar8" * identifier)) ;) (if_statement "if (bVar2 == 0) goto LAB_0003726e;" if (parenthesized_expression "(bVar2 == 0)" ( (binary_expression "bVar2 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0003726e;" goto statement_identifier ;)) (do_statement "do {\n        *pbVar8 = puVar6[bVar2];\n        bVar2 = pbVar8[1];\n        pbVar8 = pbVar8 + 1;\n      } while (bVar2 != 0);" do (compound_statement "{\n        *pbVar8 = puVar6[bVar2];\n        bVar2 = pbVar8[1];\n        pbVar8 = pbVar8 + 1;\n      }" { (expression_statement "*pbVar8 = puVar6[bVar2];" (assignment_expression "*pbVar8 = puVar6[bVar2]" (pointer_expression "*pbVar8" * identifier) = (subscript_expression "puVar6[bVar2]" identifier [ identifier ])) ;) (expression_statement "bVar2 = pbVar8[1];" (assignment_expression "bVar2 = pbVar8[1]" identifier = (subscript_expression "pbVar8[1]" identifier [ number_literal ])) ;) (expression_statement "pbVar8 = pbVar8 + 1;" (assignment_expression "pbVar8 = pbVar8 + 1" identifier = (binary_expression "pbVar8 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar2 != 0)" ( (binary_expression "bVar2 != 0" identifier != number_literal) )) ;) (if_statement "if (*s == '.') {\n        pvVar11 = hash_find(po_hash,s + 1);\n        if ((pvVar11 == (void *)0x0) ||\n           (pcVar5 = *(code **)((int)pvVar11 + 4), pcVar5 == (code *)0x0)) {\n          if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          pcVar12 = input_line_pointer;\n          restore_line_pointer(c);\n          ignore_rest_of_line();\n          cVar7 = input_line_pointer[-1];\n          pcVar9 = input_line_pointer + -1;\n          input_line_pointer = input_line_pointer + -1;\n          *pcVar9 = '\0';\n          if ((macro_defined == 0) ||\n             (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {\n            pcVar9 = s;\n            *pcVar12 = '\0';\n            pcVar12 = (char *)dcgettext(0,"unknown pseudo-op: `%s\'");\n            as_bad(pcVar12,pcVar9);\n            pcVar9 = input_line_pointer + 1;\n            *input_line_pointer = cVar7;\n            input_line_pointer = pcVar9;\n            pbVar8 = (byte *)input_line_pointer;\n          }\n        }\n        else {\n          if ((mri_pending_align != 0) &&\n             ((((pcVar5 != s_space && (pcVar5 != cons)) || (*(int *)((int)pvVar11 + 8) != 1)) &&\n              (((((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)\n                && pcVar5 != (code *)PTR_s_endif_0007ff5c) && pcVar5 != s_globl &&\n               (pcVar5 != s_ignore)))))) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          cVar7 = restore_line_pointer(c);\n          if ((cVar7 == ' ') || (cVar7 == '\t')) {\n            input_line_pointer = input_line_pointer + 1;\n          }\n          (**(code **)((int)pvVar11 + 4))(*(undefined4 *)((int)pvVar11 + 8));\n          pbVar8 = (byte *)input_line_pointer;\n          if (*(code **)((int)pvVar11 + 4) == s_end) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        restore_line_pointer(c);\n        input_line_pointer = _find_end_of_line(input_line_pointer,0,1,0);\n        cVar7 = *input_line_pointer;\n        *input_line_pointer = '\0';\n        generate_lineno_debug();\n        if ((macro_defined == 0) ||\n           (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {\n          if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          md_assemble(s);\n          if (input_line_pointer == (char *)0x0) {\n            pcVar9 = (char *)dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            as_fatal(pcVar9);\n          }\n          pcVar9 = input_line_pointer + 1;\n          *input_line_pointer = cVar7;\n          input_line_pointer = pcVar9;\n          pbVar8 = (byte *)input_line_pointer;\n        }\n      }" if (parenthesized_expression "(*s == '.')" ( (binary_expression "*s == '.'" (pointer_expression "*s" * identifier) == (char_literal "'.'" ' character ')) )) (compound_statement "{\n        pvVar11 = hash_find(po_hash,s + 1);\n        if ((pvVar11 == (void *)0x0) ||\n           (pcVar5 = *(code **)((int)pvVar11 + 4), pcVar5 == (code *)0x0)) {\n          if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          pcVar12 = input_line_pointer;\n          restore_line_pointer(c);\n          ignore_rest_of_line();\n          cVar7 = input_line_pointer[-1];\n          pcVar9 = input_line_pointer + -1;\n          input_line_pointer = input_line_pointer + -1;\n          *pcVar9 = '\0';\n          if ((macro_defined == 0) ||\n             (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {\n            pcVar9 = s;\n            *pcVar12 = '\0';\n            pcVar12 = (char *)dcgettext(0,"unknown pseudo-op: `%s\'");\n            as_bad(pcVar12,pcVar9);\n            pcVar9 = input_line_pointer + 1;\n            *input_line_pointer = cVar7;\n            input_line_pointer = pcVar9;\n            pbVar8 = (byte *)input_line_pointer;\n          }\n        }\n        else {\n          if ((mri_pending_align != 0) &&\n             ((((pcVar5 != s_space && (pcVar5 != cons)) || (*(int *)((int)pvVar11 + 8) != 1)) &&\n              (((((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)\n                && pcVar5 != (code *)PTR_s_endif_0007ff5c) && pcVar5 != s_globl &&\n               (pcVar5 != s_ignore)))))) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          cVar7 = restore_line_pointer(c);\n          if ((cVar7 == ' ') || (cVar7 == '\t')) {\n            input_line_pointer = input_line_pointer + 1;\n          }\n          (**(code **)((int)pvVar11 + 4))(*(undefined4 *)((int)pvVar11 + 8));\n          pbVar8 = (byte *)input_line_pointer;\n          if (*(code **)((int)pvVar11 + 4) == s_end) goto LAB_00037649;\n        }\n      }" { (expression_statement "pvVar11 = hash_find(po_hash,s + 1);" (assignment_expression "pvVar11 = hash_find(po_hash,s + 1)" identifier = (call_expression "hash_find(po_hash,s + 1)" identifier (argument_list "(po_hash,s + 1)" ( identifier , (binary_expression "s + 1" identifier + number_literal) )))) ;) (if_statement "if ((pvVar11 == (void *)0x0) ||\n           (pcVar5 = *(code **)((int)pvVar11 + 4), pcVar5 == (code *)0x0)) {\n          if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          pcVar12 = input_line_pointer;\n          restore_line_pointer(c);\n          ignore_rest_of_line();\n          cVar7 = input_line_pointer[-1];\n          pcVar9 = input_line_pointer + -1;\n          input_line_pointer = input_line_pointer + -1;\n          *pcVar9 = '\0';\n          if ((macro_defined == 0) ||\n             (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {\n            pcVar9 = s;\n            *pcVar12 = '\0';\n            pcVar12 = (char *)dcgettext(0,"unknown pseudo-op: `%s\'");\n            as_bad(pcVar12,pcVar9);\n            pcVar9 = input_line_pointer + 1;\n            *input_line_pointer = cVar7;\n            input_line_pointer = pcVar9;\n            pbVar8 = (byte *)input_line_pointer;\n          }\n        }\n        else {\n          if ((mri_pending_align != 0) &&\n             ((((pcVar5 != s_space && (pcVar5 != cons)) || (*(int *)((int)pvVar11 + 8) != 1)) &&\n              (((((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)\n                && pcVar5 != (code *)PTR_s_endif_0007ff5c) && pcVar5 != s_globl &&\n               (pcVar5 != s_ignore)))))) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          cVar7 = restore_line_pointer(c);\n          if ((cVar7 == ' ') || (cVar7 == '\t')) {\n            input_line_pointer = input_line_pointer + 1;\n          }\n          (**(code **)((int)pvVar11 + 4))(*(undefined4 *)((int)pvVar11 + 8));\n          pbVar8 = (byte *)input_line_pointer;\n          if (*(code **)((int)pvVar11 + 4) == s_end) goto LAB_00037649;\n        }" if (parenthesized_expression "((pvVar11 == (void *)0x0) ||\n           (pcVar5 = *(code **)((int)pvVar11 + 4), pcVar5 == (code *)0x0))" ( (binary_expression "(pvVar11 == (void *)0x0) ||\n           (pcVar5 = *(code **)((int)pvVar11 + 4), pcVar5 == (code *)0x0)" (parenthesized_expression "(pvVar11 == (void *)0x0)" ( (binary_expression "pvVar11 == (void *)0x0" identifier == (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(pcVar5 = *(code **)((int)pvVar11 + 4), pcVar5 == (code *)0x0)" ( (comma_expression "pcVar5 = *(code **)((int)pvVar11 + 4), pcVar5 == (code *)0x0" (assignment_expression "pcVar5 = *(code **)((int)pvVar11 + 4)" identifier = (pointer_expression "*(code **)((int)pvVar11 + 4)" * (cast_expression "(code **)((int)pvVar11 + 4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)pvVar11 + 4)" ( (binary_expression "(int)pvVar11 + 4" (cast_expression "(int)pvVar11" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) , (binary_expression "pcVar5 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ))) )) (compound_statement "{\n          if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          pcVar12 = input_line_pointer;\n          restore_line_pointer(c);\n          ignore_rest_of_line();\n          cVar7 = input_line_pointer[-1];\n          pcVar9 = input_line_pointer + -1;\n          input_line_pointer = input_line_pointer + -1;\n          *pcVar9 = '\0';\n          if ((macro_defined == 0) ||\n             (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {\n            pcVar9 = s;\n            *pcVar12 = '\0';\n            pcVar12 = (char *)dcgettext(0,"unknown pseudo-op: `%s\'");\n            as_bad(pcVar12,pcVar9);\n            pcVar9 = input_line_pointer + 1;\n            *input_line_pointer = cVar7;\n            input_line_pointer = pcVar9;\n            pbVar8 = (byte *)input_line_pointer;\n          }\n        }" { (if_statement "if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }" if (parenthesized_expression "(mri_pending_align != 0)" ( (binary_expression "mri_pending_align != 0" identifier != number_literal) )) (compound_statement "{\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }" { (expression_statement "do_align(1,(char *)0x0,0,0);" (call_expression "do_align(1,(char *)0x0,0,0)" identifier (argument_list "(1,(char *)0x0,0,0)" ( number_literal , (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) , number_literal , number_literal ))) ;) (expression_statement "mri_pending_align = 0;" (assignment_expression "mri_pending_align = 0" identifier = number_literal) ;) (if_statement "if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }" if (parenthesized_expression "(line_label != (symbolS *)0x0)" ( (binary_expression "line_label != (symbolS *)0x0" identifier != (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }" { (expression_statement "symbol_set_frag(line_label,frag_now);" (call_expression "symbol_set_frag(line_label,frag_now)" identifier (argument_list "(line_label,frag_now)" ( identifier , identifier ))) ;) (expression_statement "aVar21 = frag_now_fix();" (assignment_expression "aVar21 = frag_now_fix()" identifier = (call_expression "frag_now_fix()" identifier (argument_list "()" ( )))) ;) (expression_statement "S_SET_VALUE(line_label,aVar21);" (call_expression "S_SET_VALUE(line_label,aVar21)" identifier (argument_list "(line_label,aVar21)" ( identifier , identifier ))) ;) })) })) (expression_statement "pcVar12 = input_line_pointer;" (assignment_expression "pcVar12 = input_line_pointer" identifier = identifier) ;) (expression_statement "restore_line_pointer(c);" (call_expression "restore_line_pointer(c)" identifier (argument_list "(c)" ( identifier ))) ;) (expression_statement "ignore_rest_of_line();" (call_expression "ignore_rest_of_line()" identifier (argument_list "()" ( ))) ;) (expression_statement "cVar7 = input_line_pointer[-1];" (assignment_expression "cVar7 = input_line_pointer[-1]" identifier = (subscript_expression "input_line_pointer[-1]" identifier [ number_literal ])) ;) (expression_statement "pcVar9 = input_line_pointer + -1;" (assignment_expression "pcVar9 = input_line_pointer + -1" identifier = (binary_expression "input_line_pointer + -1" identifier + number_literal)) ;) (expression_statement "input_line_pointer = input_line_pointer + -1;" (assignment_expression "input_line_pointer = input_line_pointer + -1" identifier = (binary_expression "input_line_pointer + -1" identifier + number_literal)) ;) (expression_statement "*pcVar9 = '\0';" (assignment_expression "*pcVar9 = '\0'" (pointer_expression "*pcVar9" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (if_statement "if ((macro_defined == 0) ||\n             (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {\n            pcVar9 = s;\n            *pcVar12 = '\0';\n            pcVar12 = (char *)dcgettext(0,"unknown pseudo-op: `%s\'");\n            as_bad(pcVar12,pcVar9);\n            pcVar9 = input_line_pointer + 1;\n            *input_line_pointer = cVar7;\n            input_line_pointer = pcVar9;\n            pbVar8 = (byte *)input_line_pointer;\n          }" if (parenthesized_expression "((macro_defined == 0) ||\n             (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0))" ( (binary_expression "(macro_defined == 0) ||\n             (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)" (parenthesized_expression "(macro_defined == 0)" ( (binary_expression "macro_defined == 0" identifier == number_literal) )) || (parenthesized_expression "(iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)" ( (comma_expression "iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0" (assignment_expression "iVar15 = try_macro(cVar7,s)" identifier = (call_expression "try_macro(cVar7,s)" identifier (argument_list "(cVar7,s)" ( identifier , identifier )))) , (comma_expression "pbVar8 = (byte *)input_line_pointer, iVar15 == 0" (assignment_expression "pbVar8 = (byte *)input_line_pointer" identifier = (cast_expression "(byte *)input_line_pointer" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "iVar15 == 0" identifier == number_literal))) ))) )) (compound_statement "{\n            pcVar9 = s;\n            *pcVar12 = '\0';\n            pcVar12 = (char *)dcgettext(0,"unknown pseudo-op: `%s\'");\n            as_bad(pcVar12,pcVar9);\n            pcVar9 = input_line_pointer + 1;\n            *input_line_pointer = cVar7;\n            input_line_pointer = pcVar9;\n            pbVar8 = (byte *)input_line_pointer;\n          }" { (expression_statement "pcVar9 = s;" (assignment_expression "pcVar9 = s" identifier = identifier) ;) (expression_statement "*pcVar12 = '\0';" (assignment_expression "*pcVar12 = '\0'" (pointer_expression "*pcVar12" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar12 = (char *)dcgettext(0,"unknown pseudo-op: `%s\'");" (assignment_expression "pcVar12 = (char *)dcgettext(0,"unknown pseudo-op: `%s\'")" identifier = (cast_expression "(char *)dcgettext(0,"unknown pseudo-op: `%s\'")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"unknown pseudo-op: `%s\'")" identifier (argument_list "(0,"unknown pseudo-op: `%s\'")" ( number_literal , (string_literal ""unknown pseudo-op: `%s\'"" " string_content escape_sequence ") ))))) ;) (expression_statement "as_bad(pcVar12,pcVar9);" (call_expression "as_bad(pcVar12,pcVar9)" identifier (argument_list "(pcVar12,pcVar9)" ( identifier , identifier ))) ;) (expression_statement "pcVar9 = input_line_pointer + 1;" (assignment_expression "pcVar9 = input_line_pointer + 1" identifier = (binary_expression "input_line_pointer + 1" identifier + number_literal)) ;) (expression_statement "*input_line_pointer = cVar7;" (assignment_expression "*input_line_pointer = cVar7" (pointer_expression "*input_line_pointer" * identifier) = identifier) ;) (expression_statement "input_line_pointer = pcVar9;" (assignment_expression "input_line_pointer = pcVar9" identifier = identifier) ;) (expression_statement "pbVar8 = (byte *)input_line_pointer;" (assignment_expression "pbVar8 = (byte *)input_line_pointer" identifier = (cast_expression "(byte *)input_line_pointer" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) })) }) (else_clause "else {\n          if ((mri_pending_align != 0) &&\n             ((((pcVar5 != s_space && (pcVar5 != cons)) || (*(int *)((int)pvVar11 + 8) != 1)) &&\n              (((((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)\n                && pcVar5 != (code *)PTR_s_endif_0007ff5c) && pcVar5 != s_globl &&\n               (pcVar5 != s_ignore)))))) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          cVar7 = restore_line_pointer(c);\n          if ((cVar7 == ' ') || (cVar7 == '\t')) {\n            input_line_pointer = input_line_pointer + 1;\n          }\n          (**(code **)((int)pvVar11 + 4))(*(undefined4 *)((int)pvVar11 + 8));\n          pbVar8 = (byte *)input_line_pointer;\n          if (*(code **)((int)pvVar11 + 4) == s_end) goto LAB_00037649;\n        }" else (compound_statement "{\n          if ((mri_pending_align != 0) &&\n             ((((pcVar5 != s_space && (pcVar5 != cons)) || (*(int *)((int)pvVar11 + 8) != 1)) &&\n              (((((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)\n                && pcVar5 != (code *)PTR_s_endif_0007ff5c) && pcVar5 != s_globl &&\n               (pcVar5 != s_ignore)))))) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          cVar7 = restore_line_pointer(c);\n          if ((cVar7 == ' ') || (cVar7 == '\t')) {\n            input_line_pointer = input_line_pointer + 1;\n          }\n          (**(code **)((int)pvVar11 + 4))(*(undefined4 *)((int)pvVar11 + 8));\n          pbVar8 = (byte *)input_line_pointer;\n          if (*(code **)((int)pvVar11 + 4) == s_end) goto LAB_00037649;\n        }" { (if_statement "if ((mri_pending_align != 0) &&\n             ((((pcVar5 != s_space && (pcVar5 != cons)) || (*(int *)((int)pvVar11 + 8) != 1)) &&\n              (((((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)\n                && pcVar5 != (code *)PTR_s_endif_0007ff5c) && pcVar5 != s_globl &&\n               (pcVar5 != s_ignore)))))) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }" if (parenthesized_expression "((mri_pending_align != 0) &&\n             ((((pcVar5 != s_space && (pcVar5 != cons)) || (*(int *)((int)pvVar11 + 8) != 1)) &&\n              (((((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)\n                && pcVar5 != (code *)PTR_s_endif_0007ff5c) && pcVar5 != s_globl &&\n               (pcVar5 != s_ignore))))))" ( (binary_expression "(mri_pending_align != 0) &&\n             ((((pcVar5 != s_space && (pcVar5 != cons)) || (*(int *)((int)pvVar11 + 8) != 1)) &&\n              (((((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)\n                && pcVar5 != (code *)PTR_s_endif_0007ff5c) && pcVar5 != s_globl &&\n               (pcVar5 != s_ignore)))))" (parenthesized_expression "(mri_pending_align != 0)" ( (binary_expression "mri_pending_align != 0" identifier != number_literal) )) && (parenthesized_expression "((((pcVar5 != s_space && (pcVar5 != cons)) || (*(int *)((int)pvVar11 + 8) != 1)) &&\n              (((((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)\n                && pcVar5 != (code *)PTR_s_endif_0007ff5c) && pcVar5 != s_globl &&\n               (pcVar5 != s_ignore)))))" ( (parenthesized_expression "(((pcVar5 != s_space && (pcVar5 != cons)) || (*(int *)((int)pvVar11 + 8) != 1)) &&\n              (((((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)\n                && pcVar5 != (code *)PTR_s_endif_0007ff5c) && pcVar5 != s_globl &&\n               (pcVar5 != s_ignore))))" ( (binary_expression "((pcVar5 != s_space && (pcVar5 != cons)) || (*(int *)((int)pvVar11 + 8) != 1)) &&\n              (((((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)\n                && pcVar5 != (code *)PTR_s_endif_0007ff5c) && pcVar5 != s_globl &&\n               (pcVar5 != s_ignore)))" (parenthesized_expression "((pcVar5 != s_space && (pcVar5 != cons)) || (*(int *)((int)pvVar11 + 8) != 1))" ( (binary_expression "(pcVar5 != s_space && (pcVar5 != cons)) || (*(int *)((int)pvVar11 + 8) != 1)" (parenthesized_expression "(pcVar5 != s_space && (pcVar5 != cons))" ( (binary_expression "pcVar5 != s_space && (pcVar5 != cons)" (binary_expression "pcVar5 != s_space" identifier != identifier) && (parenthesized_expression "(pcVar5 != cons)" ( (binary_expression "pcVar5 != cons" identifier != identifier) ))) )) || (parenthesized_expression "(*(int *)((int)pvVar11 + 8) != 1)" ( (binary_expression "*(int *)((int)pvVar11 + 8) != 1" (pointer_expression "*(int *)((int)pvVar11 + 8)" * (cast_expression "(int *)((int)pvVar11 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pvVar11 + 8)" ( (binary_expression "(int)pvVar11 + 8" (cast_expression "(int)pvVar11" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != number_literal) ))) )) && (parenthesized_expression "(((((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)\n                && pcVar5 != (code *)PTR_s_endif_0007ff5c) && pcVar5 != s_globl &&\n               (pcVar5 != s_ignore)))" ( (parenthesized_expression "((((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)\n                && pcVar5 != (code *)PTR_s_endif_0007ff5c) && pcVar5 != s_globl &&\n               (pcVar5 != s_ignore))" ( (binary_expression "(((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)\n                && pcVar5 != (code *)PTR_s_endif_0007ff5c) && pcVar5 != s_globl &&\n               (pcVar5 != s_ignore)" (binary_expression "(((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)\n                && pcVar5 != (code *)PTR_s_endif_0007ff5c) && pcVar5 != s_globl" (parenthesized_expression "(((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)\n                && pcVar5 != (code *)PTR_s_endif_0007ff5c)" ( (binary_expression "((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)\n                && pcVar5 != (code *)PTR_s_endif_0007ff5c" (parenthesized_expression "((((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94)" ( (binary_expression "(((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4) && pcVar5 != (code *)PTR_s_else_0007ff94" (parenthesized_expression "(((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4)" ( (binary_expression "((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4) &&\n                  pcVar5 != (code *)PTR_s_ifeqs_0007ffc4" (parenthesized_expression "((pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4)" ( (binary_expression "(pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)\n                   && pcVar5 != (code *)PTR_s_ifc_0007ffd4" (parenthesized_expression "(pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4)" ( (binary_expression "pcVar5 != (code *)PTR_s_if_0007ff74 && pcVar5 != (code *)PTR_s_ifdef_0007fff4" (binary_expression "pcVar5 != (code *)PTR_s_if_0007ff74" identifier != (cast_expression "(code *)PTR_s_if_0007ff74" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) && (binary_expression "pcVar5 != (code *)PTR_s_ifdef_0007fff4" identifier != (cast_expression "(code *)PTR_s_ifdef_0007fff4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) )) && (binary_expression "pcVar5 != (code *)PTR_s_ifc_0007ffd4" identifier != (cast_expression "(code *)PTR_s_ifc_0007ffd4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) )) && (binary_expression "pcVar5 != (code *)PTR_s_ifeqs_0007ffc4" identifier != (cast_expression "(code *)PTR_s_ifeqs_0007ffc4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) )) && (binary_expression "pcVar5 != (code *)PTR_s_else_0007ff94" identifier != (cast_expression "(code *)PTR_s_else_0007ff94" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) )) && (binary_expression "pcVar5 != (code *)PTR_s_endif_0007ff5c" identifier != (cast_expression "(code *)PTR_s_endif_0007ff5c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) )) && (binary_expression "pcVar5 != s_globl" identifier != identifier)) && (parenthesized_expression "(pcVar5 != s_ignore)" ( (binary_expression "pcVar5 != s_ignore" identifier != identifier) ))) )) ))) )) ))) )) (compound_statement "{\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }" { (expression_statement "do_align(1,(char *)0x0,0,0);" (call_expression "do_align(1,(char *)0x0,0,0)" identifier (argument_list "(1,(char *)0x0,0,0)" ( number_literal , (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) , number_literal , number_literal ))) ;) (expression_statement "mri_pending_align = 0;" (assignment_expression "mri_pending_align = 0" identifier = number_literal) ;) (if_statement "if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }" if (parenthesized_expression "(line_label != (symbolS *)0x0)" ( (binary_expression "line_label != (symbolS *)0x0" identifier != (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }" { (expression_statement "symbol_set_frag(line_label,frag_now);" (call_expression "symbol_set_frag(line_label,frag_now)" identifier (argument_list "(line_label,frag_now)" ( identifier , identifier ))) ;) (expression_statement "aVar21 = frag_now_fix();" (assignment_expression "aVar21 = frag_now_fix()" identifier = (call_expression "frag_now_fix()" identifier (argument_list "()" ( )))) ;) (expression_statement "S_SET_VALUE(line_label,aVar21);" (call_expression "S_SET_VALUE(line_label,aVar21)" identifier (argument_list "(line_label,aVar21)" ( identifier , identifier ))) ;) })) })) (expression_statement "cVar7 = restore_line_pointer(c);" (assignment_expression "cVar7 = restore_line_pointer(c)" identifier = (call_expression "restore_line_pointer(c)" identifier (argument_list "(c)" ( identifier )))) ;) (if_statement "if ((cVar7 == ' ') || (cVar7 == '\t')) {\n            input_line_pointer = input_line_pointer + 1;\n          }" if (parenthesized_expression "((cVar7 == ' ') || (cVar7 == '\t'))" ( (binary_expression "(cVar7 == ' ') || (cVar7 == '\t')" (parenthesized_expression "(cVar7 == ' ')" ( (binary_expression "cVar7 == ' '" identifier == (char_literal "' '" ' character ')) )) || (parenthesized_expression "(cVar7 == '\t')" ( (binary_expression "cVar7 == '\t'" identifier == (char_literal "'\t'" ' escape_sequence ')) ))) )) (compound_statement "{\n            input_line_pointer = input_line_pointer + 1;\n          }" { (expression_statement "input_line_pointer = input_line_pointer + 1;" (assignment_expression "input_line_pointer = input_line_pointer + 1" identifier = (binary_expression "input_line_pointer + 1" identifier + number_literal)) ;) })) (expression_statement "(**(code **)((int)pvVar11 + 4))(*(undefined4 *)((int)pvVar11 + 8));" (call_expression "(**(code **)((int)pvVar11 + 4))(*(undefined4 *)((int)pvVar11 + 8))" (parenthesized_expression "(**(code **)((int)pvVar11 + 4))" ( (pointer_expression "**(code **)((int)pvVar11 + 4)" * (pointer_expression "*(code **)((int)pvVar11 + 4)" * (cast_expression "(code **)((int)pvVar11 + 4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)pvVar11 + 4)" ( (binary_expression "(int)pvVar11 + 4" (cast_expression "(int)pvVar11" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (argument_list "(*(undefined4 *)((int)pvVar11 + 8))" ( (pointer_expression "*(undefined4 *)((int)pvVar11 + 8)" * (cast_expression "(undefined4 *)((int)pvVar11 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pvVar11 + 8)" ( (binary_expression "(int)pvVar11 + 8" (cast_expression "(int)pvVar11" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))) ;) (expression_statement "pbVar8 = (byte *)input_line_pointer;" (assignment_expression "pbVar8 = (byte *)input_line_pointer" identifier = (cast_expression "(byte *)input_line_pointer" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (*(code **)((int)pvVar11 + 4) == s_end) goto LAB_00037649;" if (parenthesized_expression "(*(code **)((int)pvVar11 + 4) == s_end)" ( (binary_expression "*(code **)((int)pvVar11 + 4) == s_end" (pointer_expression "*(code **)((int)pvVar11 + 4)" * (cast_expression "(code **)((int)pvVar11 + 4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)pvVar11 + 4)" ( (binary_expression "(int)pvVar11 + 4" (cast_expression "(int)pvVar11" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == identifier) )) (goto_statement "goto LAB_00037649;" goto statement_identifier ;)) }))) }) (else_clause "else {\nLAB_0003726e:\n        restore_line_pointer(c);\n        input_line_pointer = _find_end_of_line(input_line_pointer,0,1,0);\n        cVar7 = *input_line_pointer;\n        *input_line_pointer = '\0';\n        generate_lineno_debug();\n        if ((macro_defined == 0) ||\n           (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {\n          if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          md_assemble(s);\n          if (input_line_pointer == (char *)0x0) {\n            pcVar9 = (char *)dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            as_fatal(pcVar9);\n          }\n          pcVar9 = input_line_pointer + 1;\n          *input_line_pointer = cVar7;\n          input_line_pointer = pcVar9;\n          pbVar8 = (byte *)input_line_pointer;\n        }\n      }" else (compound_statement "{\nLAB_0003726e:\n        restore_line_pointer(c);\n        input_line_pointer = _find_end_of_line(input_line_pointer,0,1,0);\n        cVar7 = *input_line_pointer;\n        *input_line_pointer = '\0';\n        generate_lineno_debug();\n        if ((macro_defined == 0) ||\n           (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {\n          if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          md_assemble(s);\n          if (input_line_pointer == (char *)0x0) {\n            pcVar9 = (char *)dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            as_fatal(pcVar9);\n          }\n          pcVar9 = input_line_pointer + 1;\n          *input_line_pointer = cVar7;\n          input_line_pointer = pcVar9;\n          pbVar8 = (byte *)input_line_pointer;\n        }\n      }" { (labeled_statement "LAB_0003726e:\n        restore_line_pointer(c);" statement_identifier : (expression_statement "restore_line_pointer(c);" (call_expression "restore_line_pointer(c)" identifier (argument_list "(c)" ( identifier ))) ;)) (expression_statement "input_line_pointer = _find_end_of_line(input_line_pointer,0,1,0);" (assignment_expression "input_line_pointer = _find_end_of_line(input_line_pointer,0,1,0)" identifier = (call_expression "_find_end_of_line(input_line_pointer,0,1,0)" identifier (argument_list "(input_line_pointer,0,1,0)" ( identifier , number_literal , number_literal , number_literal )))) ;) (expression_statement "cVar7 = *input_line_pointer;" (assignment_expression "cVar7 = *input_line_pointer" identifier = (pointer_expression "*input_line_pointer" * identifier)) ;) (expression_statement "*input_line_pointer = '\0';" (assignment_expression "*input_line_pointer = '\0'" (pointer_expression "*input_line_pointer" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "generate_lineno_debug();" (call_expression "generate_lineno_debug()" identifier (argument_list "()" ( ))) ;) (if_statement "if ((macro_defined == 0) ||\n           (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)) {\n          if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          md_assemble(s);\n          if (input_line_pointer == (char *)0x0) {\n            pcVar9 = (char *)dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            as_fatal(pcVar9);\n          }\n          pcVar9 = input_line_pointer + 1;\n          *input_line_pointer = cVar7;\n          input_line_pointer = pcVar9;\n          pbVar8 = (byte *)input_line_pointer;\n        }" if (parenthesized_expression "((macro_defined == 0) ||\n           (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0))" ( (binary_expression "(macro_defined == 0) ||\n           (iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)" (parenthesized_expression "(macro_defined == 0)" ( (binary_expression "macro_defined == 0" identifier == number_literal) )) || (parenthesized_expression "(iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0)" ( (comma_expression "iVar15 = try_macro(cVar7,s), pbVar8 = (byte *)input_line_pointer, iVar15 == 0" (assignment_expression "iVar15 = try_macro(cVar7,s)" identifier = (call_expression "try_macro(cVar7,s)" identifier (argument_list "(cVar7,s)" ( identifier , identifier )))) , (comma_expression "pbVar8 = (byte *)input_line_pointer, iVar15 == 0" (assignment_expression "pbVar8 = (byte *)input_line_pointer" identifier = (cast_expression "(byte *)input_line_pointer" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "iVar15 == 0" identifier == number_literal))) ))) )) (compound_statement "{\n          if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }\n          md_assemble(s);\n          if (input_line_pointer == (char *)0x0) {\n            pcVar9 = (char *)dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            as_fatal(pcVar9);\n          }\n          pcVar9 = input_line_pointer + 1;\n          *input_line_pointer = cVar7;\n          input_line_pointer = pcVar9;\n          pbVar8 = (byte *)input_line_pointer;\n        }" { (if_statement "if (mri_pending_align != 0) {\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }" if (parenthesized_expression "(mri_pending_align != 0)" ( (binary_expression "mri_pending_align != 0" identifier != number_literal) )) (compound_statement "{\n            do_align(1,(char *)0x0,0,0);\n            mri_pending_align = 0;\n            if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }\n          }" { (expression_statement "do_align(1,(char *)0x0,0,0);" (call_expression "do_align(1,(char *)0x0,0,0)" identifier (argument_list "(1,(char *)0x0,0,0)" ( number_literal , (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) , number_literal , number_literal ))) ;) (expression_statement "mri_pending_align = 0;" (assignment_expression "mri_pending_align = 0" identifier = number_literal) ;) (if_statement "if (line_label != (symbolS *)0x0) {\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }" if (parenthesized_expression "(line_label != (symbolS *)0x0)" ( (binary_expression "line_label != (symbolS *)0x0" identifier != (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              symbol_set_frag(line_label,frag_now);\n              aVar21 = frag_now_fix();\n              S_SET_VALUE(line_label,aVar21);\n            }" { (expression_statement "symbol_set_frag(line_label,frag_now);" (call_expression "symbol_set_frag(line_label,frag_now)" identifier (argument_list "(line_label,frag_now)" ( identifier , identifier ))) ;) (expression_statement "aVar21 = frag_now_fix();" (assignment_expression "aVar21 = frag_now_fix()" identifier = (call_expression "frag_now_fix()" identifier (argument_list "()" ( )))) ;) (expression_statement "S_SET_VALUE(line_label,aVar21);" (call_expression "S_SET_VALUE(line_label,aVar21)" identifier (argument_list "(line_label,aVar21)" ( identifier , identifier ))) ;) })) })) (expression_statement "md_assemble(s);" (call_expression "md_assemble(s)" identifier (argument_list "(s)" ( identifier ))) ;) (if_statement "if (input_line_pointer == (char *)0x0) {\n            pcVar9 = (char *)dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            as_fatal(pcVar9);\n          }" if (parenthesized_expression "(input_line_pointer == (char *)0x0)" ( (binary_expression "input_line_pointer == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            pcVar9 = (char *)dcgettext(0,"unable to continue with assembly.",5);\n                    /* WARNING: Subroutine does not return */\n            as_fatal(pcVar9);\n          }" { (expression_statement "pcVar9 = (char *)dcgettext(0,"unable to continue with assembly.",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"unable to continue with assembly.",5)" identifier = (cast_expression "(char *)dcgettext(0,"unable to continue with assembly.",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"unable to continue with assembly.",5)" identifier (argument_list "(0,"unable to continue with assembly.",5)" ( number_literal , (string_literal ""unable to continue with assembly."" " string_content ") , number_literal ))))) ;) comment (expression_statement "as_fatal(pcVar9);" (call_expression "as_fatal(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) })) (expression_statement "pcVar9 = input_line_pointer + 1;" (assignment_expression "pcVar9 = input_line_pointer + 1" identifier = (binary_expression "input_line_pointer + 1" identifier + number_literal)) ;) (expression_statement "*input_line_pointer = cVar7;" (assignment_expression "*input_line_pointer = cVar7" (pointer_expression "*input_line_pointer" * identifier) = identifier) ;) (expression_statement "input_line_pointer = pcVar9;" (assignment_expression "input_line_pointer = pcVar9" identifier = identifier) ;) (expression_statement "pbVar8 = (byte *)input_line_pointer;" (assignment_expression "pbVar8 = (byte *)input_line_pointer" identifier = (cast_expression "(byte *)input_line_pointer" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) })) }))) (goto_statement "goto LAB_00037040;" goto statement_identifier ;) })) (if_statement "if (pcVar9[1] != '=') goto LAB_0003746c;" if (parenthesized_expression "(pcVar9[1] != '=')" ( (binary_expression "pcVar9[1] != '='" (subscript_expression "pcVar9[1]" identifier [ number_literal ]) != (char_literal "'='" ' character ')) )) (goto_statement "goto LAB_0003746c;" goto statement_identifier ;)) (labeled_statement "LAB_00037691:\n    iVar15 = -1;" statement_identifier : (expression_statement "iVar15 = -1;" (assignment_expression "iVar15 = -1" identifier = number_literal) ;)) }))) (expression_statement "equals(s,iVar15);" (call_expression "equals(s,iVar15)" identifier (argument_list "(s,iVar15)" ( identifier , identifier ))) ;) (expression_statement "demand_empty_rest_of_line();" (call_expression "demand_empty_rest_of_line()" identifier (argument_list "()" ( ))) ;) (expression_statement "pbVar8 = (byte *)input_line_pointer;" (assignment_expression "pbVar8 = (byte *)input_line_pointer" identifier = (cast_expression "(byte *)input_line_pointer" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (goto_statement "goto LAB_00037040;" goto statement_identifier ;) (labeled_statement "LAB_00037439:\n  iVar15 = ignore_input();" statement_identifier : (expression_statement "iVar15 = ignore_input();" (assignment_expression "iVar15 = ignore_input()" identifier = (call_expression "ignore_input()" identifier (argument_list "()" ( )))) ;)) (if_statement "if (iVar15 == 0) {\n    input_line_pointer = input_line_pointer + -1;\n    demand_empty_rest_of_line();\n    pbVar8 = (byte *)input_line_pointer;\n    goto LAB_00037040;\n  }" if (parenthesized_expression "(iVar15 == 0)" ( (binary_expression "iVar15 == 0" identifier == number_literal) )) (compound_statement "{\n    input_line_pointer = input_line_pointer + -1;\n    demand_empty_rest_of_line();\n    pbVar8 = (byte *)input_line_pointer;\n    goto LAB_00037040;\n  }" { (expression_statement "input_line_pointer = input_line_pointer + -1;" (assignment_expression "input_line_pointer = input_line_pointer + -1" identifier = (binary_expression "input_line_pointer + -1" identifier + number_literal)) ;) (expression_statement "demand_empty_rest_of_line();" (call_expression "demand_empty_rest_of_line()" identifier (argument_list "()" ( ))) ;) (expression_statement "pbVar8 = (byte *)input_line_pointer;" (assignment_expression "pbVar8 = (byte *)input_line_pointer" identifier = (cast_expression "(byte *)input_line_pointer" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (goto_statement "goto LAB_00037040;" goto statement_identifier ;) })) (labeled_statement "LAB_00037509:\n  pcVar9 = _find_end_of_line(input_line_pointer + -1,0,0,0);" statement_identifier : (expression_statement "pcVar9 = _find_end_of_line(input_line_pointer + -1,0,0,0);" (assignment_expression "pcVar9 = _find_end_of_line(input_line_pointer + -1,0,0,0)" identifier = (call_expression "_find_end_of_line(input_line_pointer + -1,0,0,0)" identifier (argument_list "(input_line_pointer + -1,0,0,0)" ( (binary_expression "input_line_pointer + -1" identifier + number_literal) , number_literal , number_literal , number_literal )))) ;)) (if_statement "if (input_line_pointer <= buffer_limit) {\nLAB_00037376:\n    pbVar8 = (byte *)buffer_limit;\n    if (buffer_limit <= pcVar9) goto LAB_00037040;\n  }" if (parenthesized_expression "(input_line_pointer <= buffer_limit)" ( (binary_expression "input_line_pointer <= buffer_limit" identifier <= identifier) )) (compound_statement "{\nLAB_00037376:\n    pbVar8 = (byte *)buffer_limit;\n    if (buffer_limit <= pcVar9) goto LAB_00037040;\n  }" { (labeled_statement "LAB_00037376:\n    pbVar8 = (byte *)buffer_limit;" statement_identifier : (expression_statement "pbVar8 = (byte *)buffer_limit;" (assignment_expression "pbVar8 = (byte *)buffer_limit" identifier = (cast_expression "(byte *)buffer_limit" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;)) (if_statement "if (buffer_limit <= pcVar9) goto LAB_00037040;" if (parenthesized_expression "(buffer_limit <= pcVar9)" ( (binary_expression "buffer_limit <= pcVar9" identifier <= identifier) )) (goto_statement "goto LAB_00037040;" goto statement_identifier ;)) })) (labeled_statement "LAB_0003737c:\n  pbVar8 = (byte *)(pcVar9 + 1);" statement_identifier : (expression_statement "pbVar8 = (byte *)(pcVar9 + 1);" (assignment_expression "pbVar8 = (byte *)(pcVar9 + 1)" identifier = (cast_expression "(byte *)(pcVar9 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar9 + 1)" ( (binary_expression "pcVar9 + 1" identifier + number_literal) )))) ;)) (goto_statement "goto LAB_00037040;" goto statement_identifier ;) })))
(translation_unit "void FUN_00036f80(undefined4 param_1)\n\n{\n  byte bVar1;\n  code *pcVar2;\n  undefined *puVar3;\n  byte bVar4;\n  char cVar5;\n  byte *pbVar6;\n  char *pcVar7;\n  size_t sVar8;\n  void *__s;\n  byte *pbVar9;\n  char *__s_00;\n  char *pcVar10;\n  size_t sVar11;\n  undefined4 uVar12;\n  int iVar13;\n  byte bVar14;\n  uint uVar15;\n  size_t sVar16;\n  undefined4 extraout_EDX;\n  bool bVar17;\n  bool bVar18;\n  byte bVar19;\n  undefined8 uVar20;\n  byte *local_34;\n  byte *local_2c;\n  undefined1 local_28 [24];\n  \n  bVar19 = 0;\n  DAT_00088e0c = 0;\n  DAT_00088a38 = (byte *)FUN_00028de0(param_1);\n  FUN_0002b740(param_1);\n  FUN_0002a220(0);\n  FUN_0001ccd0(param_1);\n  if (DAT_000886b8 == 2) {\n    FUN_00038cd0();\n  }\nLAB_00036ffa:\n  do {\n    DAT_00088a34 = (byte *)FUN_00028fd0(&DAT_00088f58);\n    if (DAT_00088a34 == (byte *)0x0) {\nLAB_00037649:\n      FUN_0003e1c0(PTR_DAT_0007ff6c);\n      FUN_00028fa0();\n      if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }\n      return;\n    }\n    DAT_00088a0c = (byte *)0x0;\n    pbVar6 = DAT_00088f58;\nLAB_00037040:\n    DAT_00088f58 = pbVar6;\n  } while (DAT_00088a34 <= DAT_00088f58);\nLAB_00037044:\n  cVar5 = (&DAT_000802c0)[DAT_00088f58[-1]];\n  if (cVar5 == '\0') {\n    if (_DAT_00088e00 != 0) {\nLAB_00037065:\n      if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {\n        FUN_0002a220(0);\n      }\n      else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }\n      if (cVar5 != '\0') goto LAB_00037094;\n    }\n  }\n  else {\n    FUN_0003e1c0(PTR_DAT_0007ff6c);\n    if (DAT_00088f58[-1] == 10) {\n      FUN_00029290();\n    }\n    if (_DAT_00088e00 != 0) goto LAB_00037065;\nLAB_00037094:\n    DAT_00088f48 = 0;\n  }\n  do {\n    puVar3 = PTR__sch_istable_0007ff84;\n    pbVar6 = DAT_00088f58 + 1;\n    bVar14 = *DAT_00088f58;\n    uVar15 = (uint)bVar14;\n    DAT_00088f58 = pbVar6;\n    if (0x17 < (byte)(uVar15 - 9)) {\n      bVar4 = (&DAT_000803c0)[uVar15];\n      goto joined_r0x000370d3;\n    }\n  } while ((0x800009U >> (uVar15 - 9 & 0x1f) & 1) != 0);\n  bVar4 = (&DAT_000803c0)[uVar15];\njoined_r0x000370d3:\n  if (((bVar4 & 2) == 0) && (bVar14 != 0x22)) {\n    if ((&DAT_000802c0)[uVar15] != '\0') goto LAB_00037040;\n    if ((PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0) {\n      iVar13 = FUN_0001c860();\n      if (iVar13 != 0) goto LAB_00037509;\n      iVar13 = (char)bVar14 + -0x30;\n      bVar4 = *DAT_00088f58;\n      bVar1 = puVar3[(uint)bVar4 * 2];\n      pbVar9 = DAT_00088f58;\n      while ((bVar1 & 4) != 0) {\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }\n      DAT_00088f58 = pbVar9 + 1;\n      if (*pbVar9 == 0x3a) {\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }\n    }\n    DAT_00088f58 = pbVar6;\n    if (bVar14 == 0) goto LAB_00037439;\n    pcVar7 = strchr(PTR_DAT_0007ffa0,(int)(char)bVar14);\n    bVar17 = false;\n    bVar18 = pcVar7 == (char *)0x0;\n    if (bVar18) goto LAB_00037439;\n    local_2c = DAT_00088f58;\n    iVar13 = 4;\n    pbVar6 = DAT_00088f58;\n    pbVar9 = &DAT_0005e3fa;\n    do {\n      if (iVar13 == 0) break;\n      iVar13 = iVar13 + -1;\n      bVar17 = *pbVar6 < *pbVar9;\n      bVar18 = *pbVar6 == *pbVar9;\n      pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;\n      pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;\n    } while (bVar18);\n    if ((!bVar17 && !bVar18) == bVar17) {\n      FUN_00029290();\n      pbVar6 = local_2c + 4;\n      local_2c = pbVar6;\n      pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");\n      if (pbVar9 == (byte *)0x0) {\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }\n      else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }\n      iVar13 = (int)pbVar9 - (int)DAT_00088a1c;\n      DAT_00088a18 = pbVar9;\n      pcVar7 = (char *)xmalloc(iVar13);\n      __s_00 = pcVar7;\n      while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }\n      pcVar7[(int)pcVar10] = '\0';\n      if (local_34 != (byte *)0x0) {\n        free(local_34);\n      }\n      sVar11 = strlen(__s_00);\n      FUN_00038130(local_28,sVar11);\n      FUN_00038310(local_28,__s_00,sVar11);\n      FUN_00028ea0(local_28,DAT_00088f58,0);\n      FUN_000381b0(local_28);\n      pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);\n      DAT_00088a34 = pbVar6;\n      free(__s_00);\n    }\n    else {\n      FUN_00030fc0();\n      pbVar6 = DAT_00088a34;\n    }\n    if (pbVar6 <= DAT_00088f58) goto LAB_00036ffa;\n    goto LAB_00037044;\n  }\n  iVar13 = FUN_0001c860();\n  if (iVar13 != 0) {\n    pbVar9 = (byte *)FUN_0002f7d0(0);\n    if (DAT_00088f58 <= DAT_00088a34) goto LAB_00037376;\n    goto LAB_0003737c;\n  }\n  DAT_00088f58 = DAT_00088f58 + -1;\n  bVar4 = FUN_00025220(&local_2c);\n  pbVar6 = local_2c;\n  iVar13 = 1;\n  bVar14 = bVar4;\n  if (bVar4 == 0x22) {\n    bVar14 = DAT_00088f58[1];\n    iVar13 = 2;\n  }\n  pbVar9 = DAT_00088f58 + iVar13;\n  if (bVar14 == 0x3a) {\n    DAT_00088f48 = FUN_0003d480(local_2c);\n    FUN_00027230((int)(char)bVar4);\n    pbVar6 = DAT_00088f58 + 1;\n    if (DAT_00088f58[1] == 0x20) {\n      pbVar6 = DAT_00088f58 + 2;\n    }\n    goto LAB_00037040;\n  }\n  if (bVar14 == 0x3d) {\n    if (*pbVar9 == 0x3d) goto LAB_00037691;\nLAB_0003746c:\n    uVar12 = 1;\n  }\n  else {\n    if (((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d)) {\n      strncpy(&DAT_00088f60,(char *)local_2c,0x80);\n      puVar3 = PTR__sch_tolower_0007ffcc;\n      DAT_00088fdf = 0;\n      bVar14 = *pbVar6;\n      if (bVar14 == 0) goto LAB_0003726e;\n      do {\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      } while (bVar14 != 0);\n      if (*local_2c == 0x2e) {\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }\n      goto LAB_00037040;\n    }\n    if (pbVar9[1] != 0x3d) goto LAB_0003746c;\nLAB_00037691:\n    uVar12 = 0xffffffff;\n  }\n  FUN_00036d70(local_2c,uVar12);\n  FUN_00031210();\n  pbVar6 = DAT_00088f58;\n  goto LAB_00037040;\nLAB_00037439:\n  iVar13 = FUN_0001c860();\n  if (iVar13 == 0) {\n    DAT_00088f58 = DAT_00088f58 + -1;\n    FUN_00031210();\n    pbVar6 = DAT_00088f58;\n    goto LAB_00037040;\n  }\nLAB_00037509:\n  pbVar9 = (byte *)FUN_0002f7d0(0);\n  if (DAT_00088f58 <= DAT_00088a34) {\nLAB_00037376:\n    pbVar6 = DAT_00088a34;\n    if (DAT_00088a34 <= pbVar9) goto LAB_00037040;\n  }\nLAB_0003737c:\n  pbVar6 = pbVar9 + 1;\n  goto LAB_00037040;\n}\n\n" (function_definition "void FUN_00036f80(undefined4 param_1)\n\n{\n  byte bVar1;\n  code *pcVar2;\n  undefined *puVar3;\n  byte bVar4;\n  char cVar5;\n  byte *pbVar6;\n  char *pcVar7;\n  size_t sVar8;\n  void *__s;\n  byte *pbVar9;\n  char *__s_00;\n  char *pcVar10;\n  size_t sVar11;\n  undefined4 uVar12;\n  int iVar13;\n  byte bVar14;\n  uint uVar15;\n  size_t sVar16;\n  undefined4 extraout_EDX;\n  bool bVar17;\n  bool bVar18;\n  byte bVar19;\n  undefined8 uVar20;\n  byte *local_34;\n  byte *local_2c;\n  undefined1 local_28 [24];\n  \n  bVar19 = 0;\n  DAT_00088e0c = 0;\n  DAT_00088a38 = (byte *)FUN_00028de0(param_1);\n  FUN_0002b740(param_1);\n  FUN_0002a220(0);\n  FUN_0001ccd0(param_1);\n  if (DAT_000886b8 == 2) {\n    FUN_00038cd0();\n  }\nLAB_00036ffa:\n  do {\n    DAT_00088a34 = (byte *)FUN_00028fd0(&DAT_00088f58);\n    if (DAT_00088a34 == (byte *)0x0) {\nLAB_00037649:\n      FUN_0003e1c0(PTR_DAT_0007ff6c);\n      FUN_00028fa0();\n      if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }\n      return;\n    }\n    DAT_00088a0c = (byte *)0x0;\n    pbVar6 = DAT_00088f58;\nLAB_00037040:\n    DAT_00088f58 = pbVar6;\n  } while (DAT_00088a34 <= DAT_00088f58);\nLAB_00037044:\n  cVar5 = (&DAT_000802c0)[DAT_00088f58[-1]];\n  if (cVar5 == '\0') {\n    if (_DAT_00088e00 != 0) {\nLAB_00037065:\n      if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {\n        FUN_0002a220(0);\n      }\n      else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }\n      if (cVar5 != '\0') goto LAB_00037094;\n    }\n  }\n  else {\n    FUN_0003e1c0(PTR_DAT_0007ff6c);\n    if (DAT_00088f58[-1] == 10) {\n      FUN_00029290();\n    }\n    if (_DAT_00088e00 != 0) goto LAB_00037065;\nLAB_00037094:\n    DAT_00088f48 = 0;\n  }\n  do {\n    puVar3 = PTR__sch_istable_0007ff84;\n    pbVar6 = DAT_00088f58 + 1;\n    bVar14 = *DAT_00088f58;\n    uVar15 = (uint)bVar14;\n    DAT_00088f58 = pbVar6;\n    if (0x17 < (byte)(uVar15 - 9)) {\n      bVar4 = (&DAT_000803c0)[uVar15];\n      goto joined_r0x000370d3;\n    }\n  } while ((0x800009U >> (uVar15 - 9 & 0x1f) & 1) != 0);\n  bVar4 = (&DAT_000803c0)[uVar15];\njoined_r0x000370d3:\n  if (((bVar4 & 2) == 0) && (bVar14 != 0x22)) {\n    if ((&DAT_000802c0)[uVar15] != '\0') goto LAB_00037040;\n    if ((PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0) {\n      iVar13 = FUN_0001c860();\n      if (iVar13 != 0) goto LAB_00037509;\n      iVar13 = (char)bVar14 + -0x30;\n      bVar4 = *DAT_00088f58;\n      bVar1 = puVar3[(uint)bVar4 * 2];\n      pbVar9 = DAT_00088f58;\n      while ((bVar1 & 4) != 0) {\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }\n      DAT_00088f58 = pbVar9 + 1;\n      if (*pbVar9 == 0x3a) {\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }\n    }\n    DAT_00088f58 = pbVar6;\n    if (bVar14 == 0) goto LAB_00037439;\n    pcVar7 = strchr(PTR_DAT_0007ffa0,(int)(char)bVar14);\n    bVar17 = false;\n    bVar18 = pcVar7 == (char *)0x0;\n    if (bVar18) goto LAB_00037439;\n    local_2c = DAT_00088f58;\n    iVar13 = 4;\n    pbVar6 = DAT_00088f58;\n    pbVar9 = &DAT_0005e3fa;\n    do {\n      if (iVar13 == 0) break;\n      iVar13 = iVar13 + -1;\n      bVar17 = *pbVar6 < *pbVar9;\n      bVar18 = *pbVar6 == *pbVar9;\n      pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;\n      pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;\n    } while (bVar18);\n    if ((!bVar17 && !bVar18) == bVar17) {\n      FUN_00029290();\n      pbVar6 = local_2c + 4;\n      local_2c = pbVar6;\n      pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");\n      if (pbVar9 == (byte *)0x0) {\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }\n      else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }\n      iVar13 = (int)pbVar9 - (int)DAT_00088a1c;\n      DAT_00088a18 = pbVar9;\n      pcVar7 = (char *)xmalloc(iVar13);\n      __s_00 = pcVar7;\n      while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }\n      pcVar7[(int)pcVar10] = '\0';\n      if (local_34 != (byte *)0x0) {\n        free(local_34);\n      }\n      sVar11 = strlen(__s_00);\n      FUN_00038130(local_28,sVar11);\n      FUN_00038310(local_28,__s_00,sVar11);\n      FUN_00028ea0(local_28,DAT_00088f58,0);\n      FUN_000381b0(local_28);\n      pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);\n      DAT_00088a34 = pbVar6;\n      free(__s_00);\n    }\n    else {\n      FUN_00030fc0();\n      pbVar6 = DAT_00088a34;\n    }\n    if (pbVar6 <= DAT_00088f58) goto LAB_00036ffa;\n    goto LAB_00037044;\n  }\n  iVar13 = FUN_0001c860();\n  if (iVar13 != 0) {\n    pbVar9 = (byte *)FUN_0002f7d0(0);\n    if (DAT_00088f58 <= DAT_00088a34) goto LAB_00037376;\n    goto LAB_0003737c;\n  }\n  DAT_00088f58 = DAT_00088f58 + -1;\n  bVar4 = FUN_00025220(&local_2c);\n  pbVar6 = local_2c;\n  iVar13 = 1;\n  bVar14 = bVar4;\n  if (bVar4 == 0x22) {\n    bVar14 = DAT_00088f58[1];\n    iVar13 = 2;\n  }\n  pbVar9 = DAT_00088f58 + iVar13;\n  if (bVar14 == 0x3a) {\n    DAT_00088f48 = FUN_0003d480(local_2c);\n    FUN_00027230((int)(char)bVar4);\n    pbVar6 = DAT_00088f58 + 1;\n    if (DAT_00088f58[1] == 0x20) {\n      pbVar6 = DAT_00088f58 + 2;\n    }\n    goto LAB_00037040;\n  }\n  if (bVar14 == 0x3d) {\n    if (*pbVar9 == 0x3d) goto LAB_00037691;\nLAB_0003746c:\n    uVar12 = 1;\n  }\n  else {\n    if (((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d)) {\n      strncpy(&DAT_00088f60,(char *)local_2c,0x80);\n      puVar3 = PTR__sch_tolower_0007ffcc;\n      DAT_00088fdf = 0;\n      bVar14 = *pbVar6;\n      if (bVar14 == 0) goto LAB_0003726e;\n      do {\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      } while (bVar14 != 0);\n      if (*local_2c == 0x2e) {\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }\n      goto LAB_00037040;\n    }\n    if (pbVar9[1] != 0x3d) goto LAB_0003746c;\nLAB_00037691:\n    uVar12 = 0xffffffff;\n  }\n  FUN_00036d70(local_2c,uVar12);\n  FUN_00031210();\n  pbVar6 = DAT_00088f58;\n  goto LAB_00037040;\nLAB_00037439:\n  iVar13 = FUN_0001c860();\n  if (iVar13 == 0) {\n    DAT_00088f58 = DAT_00088f58 + -1;\n    FUN_00031210();\n    pbVar6 = DAT_00088f58;\n    goto LAB_00037040;\n  }\nLAB_00037509:\n  pbVar9 = (byte *)FUN_0002f7d0(0);\n  if (DAT_00088f58 <= DAT_00088a34) {\nLAB_00037376:\n    pbVar6 = DAT_00088a34;\n    if (DAT_00088a34 <= pbVar9) goto LAB_00037040;\n  }\nLAB_0003737c:\n  pbVar6 = pbVar9 + 1;\n  goto LAB_00037040;\n}" primitive_type (function_declarator "FUN_00036f80(undefined4 param_1)" identifier (parameter_list "(undefined4 param_1)" ( (parameter_declaration "undefined4 param_1" type_identifier identifier) ))) (compound_statement "{\n  byte bVar1;\n  code *pcVar2;\n  undefined *puVar3;\n  byte bVar4;\n  char cVar5;\n  byte *pbVar6;\n  char *pcVar7;\n  size_t sVar8;\n  void *__s;\n  byte *pbVar9;\n  char *__s_00;\n  char *pcVar10;\n  size_t sVar11;\n  undefined4 uVar12;\n  int iVar13;\n  byte bVar14;\n  uint uVar15;\n  size_t sVar16;\n  undefined4 extraout_EDX;\n  bool bVar17;\n  bool bVar18;\n  byte bVar19;\n  undefined8 uVar20;\n  byte *local_34;\n  byte *local_2c;\n  undefined1 local_28 [24];\n  \n  bVar19 = 0;\n  DAT_00088e0c = 0;\n  DAT_00088a38 = (byte *)FUN_00028de0(param_1);\n  FUN_0002b740(param_1);\n  FUN_0002a220(0);\n  FUN_0001ccd0(param_1);\n  if (DAT_000886b8 == 2) {\n    FUN_00038cd0();\n  }\nLAB_00036ffa:\n  do {\n    DAT_00088a34 = (byte *)FUN_00028fd0(&DAT_00088f58);\n    if (DAT_00088a34 == (byte *)0x0) {\nLAB_00037649:\n      FUN_0003e1c0(PTR_DAT_0007ff6c);\n      FUN_00028fa0();\n      if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }\n      return;\n    }\n    DAT_00088a0c = (byte *)0x0;\n    pbVar6 = DAT_00088f58;\nLAB_00037040:\n    DAT_00088f58 = pbVar6;\n  } while (DAT_00088a34 <= DAT_00088f58);\nLAB_00037044:\n  cVar5 = (&DAT_000802c0)[DAT_00088f58[-1]];\n  if (cVar5 == '\0') {\n    if (_DAT_00088e00 != 0) {\nLAB_00037065:\n      if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {\n        FUN_0002a220(0);\n      }\n      else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }\n      if (cVar5 != '\0') goto LAB_00037094;\n    }\n  }\n  else {\n    FUN_0003e1c0(PTR_DAT_0007ff6c);\n    if (DAT_00088f58[-1] == 10) {\n      FUN_00029290();\n    }\n    if (_DAT_00088e00 != 0) goto LAB_00037065;\nLAB_00037094:\n    DAT_00088f48 = 0;\n  }\n  do {\n    puVar3 = PTR__sch_istable_0007ff84;\n    pbVar6 = DAT_00088f58 + 1;\n    bVar14 = *DAT_00088f58;\n    uVar15 = (uint)bVar14;\n    DAT_00088f58 = pbVar6;\n    if (0x17 < (byte)(uVar15 - 9)) {\n      bVar4 = (&DAT_000803c0)[uVar15];\n      goto joined_r0x000370d3;\n    }\n  } while ((0x800009U >> (uVar15 - 9 & 0x1f) & 1) != 0);\n  bVar4 = (&DAT_000803c0)[uVar15];\njoined_r0x000370d3:\n  if (((bVar4 & 2) == 0) && (bVar14 != 0x22)) {\n    if ((&DAT_000802c0)[uVar15] != '\0') goto LAB_00037040;\n    if ((PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0) {\n      iVar13 = FUN_0001c860();\n      if (iVar13 != 0) goto LAB_00037509;\n      iVar13 = (char)bVar14 + -0x30;\n      bVar4 = *DAT_00088f58;\n      bVar1 = puVar3[(uint)bVar4 * 2];\n      pbVar9 = DAT_00088f58;\n      while ((bVar1 & 4) != 0) {\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }\n      DAT_00088f58 = pbVar9 + 1;\n      if (*pbVar9 == 0x3a) {\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }\n    }\n    DAT_00088f58 = pbVar6;\n    if (bVar14 == 0) goto LAB_00037439;\n    pcVar7 = strchr(PTR_DAT_0007ffa0,(int)(char)bVar14);\n    bVar17 = false;\n    bVar18 = pcVar7 == (char *)0x0;\n    if (bVar18) goto LAB_00037439;\n    local_2c = DAT_00088f58;\n    iVar13 = 4;\n    pbVar6 = DAT_00088f58;\n    pbVar9 = &DAT_0005e3fa;\n    do {\n      if (iVar13 == 0) break;\n      iVar13 = iVar13 + -1;\n      bVar17 = *pbVar6 < *pbVar9;\n      bVar18 = *pbVar6 == *pbVar9;\n      pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;\n      pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;\n    } while (bVar18);\n    if ((!bVar17 && !bVar18) == bVar17) {\n      FUN_00029290();\n      pbVar6 = local_2c + 4;\n      local_2c = pbVar6;\n      pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");\n      if (pbVar9 == (byte *)0x0) {\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }\n      else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }\n      iVar13 = (int)pbVar9 - (int)DAT_00088a1c;\n      DAT_00088a18 = pbVar9;\n      pcVar7 = (char *)xmalloc(iVar13);\n      __s_00 = pcVar7;\n      while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }\n      pcVar7[(int)pcVar10] = '\0';\n      if (local_34 != (byte *)0x0) {\n        free(local_34);\n      }\n      sVar11 = strlen(__s_00);\n      FUN_00038130(local_28,sVar11);\n      FUN_00038310(local_28,__s_00,sVar11);\n      FUN_00028ea0(local_28,DAT_00088f58,0);\n      FUN_000381b0(local_28);\n      pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);\n      DAT_00088a34 = pbVar6;\n      free(__s_00);\n    }\n    else {\n      FUN_00030fc0();\n      pbVar6 = DAT_00088a34;\n    }\n    if (pbVar6 <= DAT_00088f58) goto LAB_00036ffa;\n    goto LAB_00037044;\n  }\n  iVar13 = FUN_0001c860();\n  if (iVar13 != 0) {\n    pbVar9 = (byte *)FUN_0002f7d0(0);\n    if (DAT_00088f58 <= DAT_00088a34) goto LAB_00037376;\n    goto LAB_0003737c;\n  }\n  DAT_00088f58 = DAT_00088f58 + -1;\n  bVar4 = FUN_00025220(&local_2c);\n  pbVar6 = local_2c;\n  iVar13 = 1;\n  bVar14 = bVar4;\n  if (bVar4 == 0x22) {\n    bVar14 = DAT_00088f58[1];\n    iVar13 = 2;\n  }\n  pbVar9 = DAT_00088f58 + iVar13;\n  if (bVar14 == 0x3a) {\n    DAT_00088f48 = FUN_0003d480(local_2c);\n    FUN_00027230((int)(char)bVar4);\n    pbVar6 = DAT_00088f58 + 1;\n    if (DAT_00088f58[1] == 0x20) {\n      pbVar6 = DAT_00088f58 + 2;\n    }\n    goto LAB_00037040;\n  }\n  if (bVar14 == 0x3d) {\n    if (*pbVar9 == 0x3d) goto LAB_00037691;\nLAB_0003746c:\n    uVar12 = 1;\n  }\n  else {\n    if (((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d)) {\n      strncpy(&DAT_00088f60,(char *)local_2c,0x80);\n      puVar3 = PTR__sch_tolower_0007ffcc;\n      DAT_00088fdf = 0;\n      bVar14 = *pbVar6;\n      if (bVar14 == 0) goto LAB_0003726e;\n      do {\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      } while (bVar14 != 0);\n      if (*local_2c == 0x2e) {\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }\n      goto LAB_00037040;\n    }\n    if (pbVar9[1] != 0x3d) goto LAB_0003746c;\nLAB_00037691:\n    uVar12 = 0xffffffff;\n  }\n  FUN_00036d70(local_2c,uVar12);\n  FUN_00031210();\n  pbVar6 = DAT_00088f58;\n  goto LAB_00037040;\nLAB_00037439:\n  iVar13 = FUN_0001c860();\n  if (iVar13 == 0) {\n    DAT_00088f58 = DAT_00088f58 + -1;\n    FUN_00031210();\n    pbVar6 = DAT_00088f58;\n    goto LAB_00037040;\n  }\nLAB_00037509:\n  pbVar9 = (byte *)FUN_0002f7d0(0);\n  if (DAT_00088f58 <= DAT_00088a34) {\nLAB_00037376:\n    pbVar6 = DAT_00088a34;\n    if (DAT_00088a34 <= pbVar9) goto LAB_00037040;\n  }\nLAB_0003737c:\n  pbVar6 = pbVar9 + 1;\n  goto LAB_00037040;\n}" { (declaration "byte bVar1;" type_identifier identifier ;) (declaration "code *pcVar2;" type_identifier (pointer_declarator "*pcVar2" * identifier) ;) (declaration "undefined *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "byte bVar4;" type_identifier identifier ;) (declaration "char cVar5;" primitive_type identifier ;) (declaration "byte *pbVar6;" type_identifier (pointer_declarator "*pbVar6" * identifier) ;) (declaration "char *pcVar7;" primitive_type (pointer_declarator "*pcVar7" * identifier) ;) (declaration "size_t sVar8;" primitive_type identifier ;) (declaration "void *__s;" primitive_type (pointer_declarator "*__s" * identifier) ;) (declaration "byte *pbVar9;" type_identifier (pointer_declarator "*pbVar9" * identifier) ;) (declaration "char *__s_00;" primitive_type (pointer_declarator "*__s_00" * identifier) ;) (declaration "char *pcVar10;" primitive_type (pointer_declarator "*pcVar10" * identifier) ;) (declaration "size_t sVar11;" primitive_type identifier ;) (declaration "undefined4 uVar12;" type_identifier identifier ;) (declaration "int iVar13;" primitive_type identifier ;) (declaration "byte bVar14;" type_identifier identifier ;) (declaration "uint uVar15;" type_identifier identifier ;) (declaration "size_t sVar16;" primitive_type identifier ;) (declaration "undefined4 extraout_EDX;" type_identifier identifier ;) (declaration "bool bVar17;" primitive_type identifier ;) (declaration "bool bVar18;" primitive_type identifier ;) (declaration "byte bVar19;" type_identifier identifier ;) (declaration "undefined8 uVar20;" type_identifier identifier ;) (declaration "byte *local_34;" type_identifier (pointer_declarator "*local_34" * identifier) ;) (declaration "byte *local_2c;" type_identifier (pointer_declarator "*local_2c" * identifier) ;) (declaration "undefined1 local_28 [24];" type_identifier (array_declarator "local_28 [24]" identifier [ number_literal ]) ;) (expression_statement "bVar19 = 0;" (assignment_expression "bVar19 = 0" identifier = number_literal) ;) (expression_statement "DAT_00088e0c = 0;" (assignment_expression "DAT_00088e0c = 0" identifier = number_literal) ;) (expression_statement "DAT_00088a38 = (byte *)FUN_00028de0(param_1);" (assignment_expression "DAT_00088a38 = (byte *)FUN_00028de0(param_1)" identifier = (cast_expression "(byte *)FUN_00028de0(param_1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00028de0(param_1)" identifier (argument_list "(param_1)" ( identifier ))))) ;) (expression_statement "FUN_0002b740(param_1);" (call_expression "FUN_0002b740(param_1)" identifier (argument_list "(param_1)" ( identifier ))) ;) (expression_statement "FUN_0002a220(0);" (call_expression "FUN_0002a220(0)" identifier (argument_list "(0)" ( number_literal ))) ;) (expression_statement "FUN_0001ccd0(param_1);" (call_expression "FUN_0001ccd0(param_1)" identifier (argument_list "(param_1)" ( identifier ))) ;) (if_statement "if (DAT_000886b8 == 2) {\n    FUN_00038cd0();\n  }" if (parenthesized_expression "(DAT_000886b8 == 2)" ( (binary_expression "DAT_000886b8 == 2" identifier == number_literal) )) (compound_statement "{\n    FUN_00038cd0();\n  }" { (expression_statement "FUN_00038cd0();" (call_expression "FUN_00038cd0()" identifier (argument_list "()" ( ))) ;) })) (labeled_statement "LAB_00036ffa:\n  do {\n    DAT_00088a34 = (byte *)FUN_00028fd0(&DAT_00088f58);\n    if (DAT_00088a34 == (byte *)0x0) {\nLAB_00037649:\n      FUN_0003e1c0(PTR_DAT_0007ff6c);\n      FUN_00028fa0();\n      if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }\n      return;\n    }\n    DAT_00088a0c = (byte *)0x0;\n    pbVar6 = DAT_00088f58;\nLAB_00037040:\n    DAT_00088f58 = pbVar6;\n  } while (DAT_00088a34 <= DAT_00088f58);" statement_identifier : (do_statement "do {\n    DAT_00088a34 = (byte *)FUN_00028fd0(&DAT_00088f58);\n    if (DAT_00088a34 == (byte *)0x0) {\nLAB_00037649:\n      FUN_0003e1c0(PTR_DAT_0007ff6c);\n      FUN_00028fa0();\n      if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }\n      return;\n    }\n    DAT_00088a0c = (byte *)0x0;\n    pbVar6 = DAT_00088f58;\nLAB_00037040:\n    DAT_00088f58 = pbVar6;\n  } while (DAT_00088a34 <= DAT_00088f58);" do (compound_statement "{\n    DAT_00088a34 = (byte *)FUN_00028fd0(&DAT_00088f58);\n    if (DAT_00088a34 == (byte *)0x0) {\nLAB_00037649:\n      FUN_0003e1c0(PTR_DAT_0007ff6c);\n      FUN_00028fa0();\n      if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }\n      return;\n    }\n    DAT_00088a0c = (byte *)0x0;\n    pbVar6 = DAT_00088f58;\nLAB_00037040:\n    DAT_00088f58 = pbVar6;\n  }" { (expression_statement "DAT_00088a34 = (byte *)FUN_00028fd0(&DAT_00088f58);" (assignment_expression "DAT_00088a34 = (byte *)FUN_00028fd0(&DAT_00088f58)" identifier = (cast_expression "(byte *)FUN_00028fd0(&DAT_00088f58)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00028fd0(&DAT_00088f58)" identifier (argument_list "(&DAT_00088f58)" ( (pointer_expression "&DAT_00088f58" & identifier) ))))) ;) (if_statement "if (DAT_00088a34 == (byte *)0x0) {\nLAB_00037649:\n      FUN_0003e1c0(PTR_DAT_0007ff6c);\n      FUN_00028fa0();\n      if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }\n      return;\n    }" if (parenthesized_expression "(DAT_00088a34 == (byte *)0x0)" ( (binary_expression "DAT_00088a34 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_00037649:\n      FUN_0003e1c0(PTR_DAT_0007ff6c);\n      FUN_00028fa0();\n      if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }\n      return;\n    }" { (labeled_statement "LAB_00037649:\n      FUN_0003e1c0(PTR_DAT_0007ff6c);" statement_identifier : (expression_statement "FUN_0003e1c0(PTR_DAT_0007ff6c);" (call_expression "FUN_0003e1c0(PTR_DAT_0007ff6c)" identifier (argument_list "(PTR_DAT_0007ff6c)" ( identifier ))) ;)) (expression_statement "FUN_00028fa0();" (call_expression "FUN_00028fa0()" identifier (argument_list "()" ( ))) ;) (if_statement "if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }" if (parenthesized_expression "((DAT_00088d64 != 0) && (DAT_00088e0c != 0))" ( (binary_expression "(DAT_00088d64 != 0) && (DAT_00088e0c != 0)" (parenthesized_expression "(DAT_00088d64 != 0)" ( (binary_expression "DAT_00088d64 != 0" identifier != number_literal) )) && (parenthesized_expression "(DAT_00088e0c != 0)" ( (binary_expression "DAT_00088e0c != 0" identifier != number_literal) ))) )) (compound_statement "{\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }" { (expression_statement "FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");" (call_expression "FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here")" identifier (argument_list "(DAT_00088d6c,DAT_00088e0c,"first comment found here")" ( identifier , identifier , (string_literal ""first comment found here"" " string_content ") ))) ;) (return_statement "return;" return ;) })) (return_statement "return;" return ;) })) (expression_statement "DAT_00088a0c = (byte *)0x0;" (assignment_expression "DAT_00088a0c = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pbVar6 = DAT_00088f58;" (assignment_expression "pbVar6 = DAT_00088f58" identifier = identifier) ;) (labeled_statement "LAB_00037040:\n    DAT_00088f58 = pbVar6;" statement_identifier : (expression_statement "DAT_00088f58 = pbVar6;" (assignment_expression "DAT_00088f58 = pbVar6" identifier = identifier) ;)) }) while (parenthesized_expression "(DAT_00088a34 <= DAT_00088f58)" ( (binary_expression "DAT_00088a34 <= DAT_00088f58" identifier <= identifier) )) ;)) (labeled_statement "LAB_00037044:\n  cVar5 = (&DAT_000802c0)[DAT_00088f58[-1]];" statement_identifier : (expression_statement "cVar5 = (&DAT_000802c0)[DAT_00088f58[-1]];" (assignment_expression "cVar5 = (&DAT_000802c0)[DAT_00088f58[-1]]" identifier = (subscript_expression "(&DAT_000802c0)[DAT_00088f58[-1]]" (parenthesized_expression "(&DAT_000802c0)" ( (pointer_expression "&DAT_000802c0" & identifier) )) [ (subscript_expression "DAT_00088f58[-1]" identifier [ number_literal ]) ])) ;)) (if_statement "if (cVar5 == '\0') {\n    if (_DAT_00088e00 != 0) {\nLAB_00037065:\n      if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {\n        FUN_0002a220(0);\n      }\n      else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }\n      if (cVar5 != '\0') goto LAB_00037094;\n    }\n  }\n  else {\n    FUN_0003e1c0(PTR_DAT_0007ff6c);\n    if (DAT_00088f58[-1] == 10) {\n      FUN_00029290();\n    }\n    if (_DAT_00088e00 != 0) goto LAB_00037065;\nLAB_00037094:\n    DAT_00088f48 = 0;\n  }" if (parenthesized_expression "(cVar5 == '\0')" ( (binary_expression "cVar5 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (_DAT_00088e00 != 0) {\nLAB_00037065:\n      if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {\n        FUN_0002a220(0);\n      }\n      else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }\n      if (cVar5 != '\0') goto LAB_00037094;\n    }\n  }" { (if_statement "if (_DAT_00088e00 != 0) {\nLAB_00037065:\n      if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {\n        FUN_0002a220(0);\n      }\n      else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }\n      if (cVar5 != '\0') goto LAB_00037094;\n    }" if (parenthesized_expression "(_DAT_00088e00 != 0)" ( (binary_expression "_DAT_00088e00 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_00037065:\n      if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {\n        FUN_0002a220(0);\n      }\n      else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }\n      if (cVar5 != '\0') goto LAB_00037094;\n    }" { (labeled_statement "LAB_00037065:\n      if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {\n        FUN_0002a220(0);\n      }\n      else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }" statement_identifier : (if_statement "if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {\n        FUN_0002a220(0);\n      }\n      else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }" if (parenthesized_expression "(((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1))" ( (binary_expression "((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)" (parenthesized_expression "((_DAT_00088e00 & 0x40) == 0)" ( (binary_expression "(_DAT_00088e00 & 0x40) == 0" (parenthesized_expression "(_DAT_00088e00 & 0x40)" ( (binary_expression "_DAT_00088e00 & 0x40" identifier & number_literal) )) == number_literal) )) || (parenthesized_expression "((int)DAT_00088f14 < 1)" ( (binary_expression "(int)DAT_00088f14 < 1" (cast_expression "(int)DAT_00088f14" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) ))) )) (compound_statement "{\n        FUN_0002a220(0);\n      }" { (expression_statement "FUN_0002a220(0);" (call_expression "FUN_0002a220(0)" identifier (argument_list "(0)" ( number_literal ))) ;) }) (else_clause "else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }" else (compound_statement "{\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }" { (expression_statement "local_2c = (byte *)FUN_0002f7d0(0);" (assignment_expression "local_2c = (byte *)FUN_0002f7d0(0)" identifier = (cast_expression "(byte *)FUN_0002f7d0(0)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0002f7d0(0)" identifier (argument_list "(0)" ( number_literal ))))) ;) (if_statement "if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }" if (parenthesized_expression "(DAT_00088a0c != local_2c)" ( (binary_expression "DAT_00088a0c != local_2c" identifier != identifier) )) (compound_statement "{\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }" { (expression_statement "sVar8 = (int)local_2c - (int)DAT_00088f58;" (assignment_expression "sVar8 = (int)local_2c - (int)DAT_00088f58" identifier = (binary_expression "(int)local_2c - (int)DAT_00088f58" (cast_expression "(int)local_2c" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)DAT_00088f58" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "DAT_00088a0c = local_2c;" (assignment_expression "DAT_00088a0c = local_2c" identifier = identifier) ;) (expression_statement "__s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);" (assignment_expression "__s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2)" identifier = (cast_expression "(void *)xmalloc(sVar8 + DAT_00088f14 + 2)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(sVar8 + DAT_00088f14 + 2)" identifier (argument_list "(sVar8 + DAT_00088f14 + 2)" ( (binary_expression "sVar8 + DAT_00088f14 + 2" (binary_expression "sVar8 + DAT_00088f14" identifier + identifier) + number_literal) ))))) ;) (expression_statement "sVar11 = DAT_00088f14;" (assignment_expression "sVar11 = DAT_00088f14" identifier = identifier) ;) (expression_statement "memset(__s,0x3e,DAT_00088f14);" (call_expression "memset(__s,0x3e,DAT_00088f14)" identifier (argument_list "(__s,0x3e,DAT_00088f14)" ( identifier , number_literal , identifier ))) ;) (expression_statement "*(undefined1 *)((int)__s + sVar11) = 0x20;" (assignment_expression "*(undefined1 *)((int)__s + sVar11) = 0x20" (pointer_expression "*(undefined1 *)((int)__s + sVar11)" * (cast_expression "(undefined1 *)((int)__s + sVar11)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)__s + sVar11)" ( (binary_expression "(int)__s + sVar11" (cast_expression "(int)__s" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = number_literal) ;) (expression_statement "memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);" (call_expression "memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8)" identifier (argument_list "((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8)" ( (cast_expression "(void *)((int)__s + DAT_00088f14 + 1)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)__s + DAT_00088f14 + 1)" ( (binary_expression "(int)__s + DAT_00088f14 + 1" (binary_expression "(int)__s + DAT_00088f14" (cast_expression "(int)__s" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) ))) , identifier , identifier ))) ;) (expression_statement "*(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;" (assignment_expression "*(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0" (pointer_expression "*(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1)" * (cast_expression "(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)__s + DAT_00088f14 + sVar8 + 1)" ( (binary_expression "(int)__s + DAT_00088f14 + sVar8 + 1" (binary_expression "(int)__s + DAT_00088f14 + sVar8" (binary_expression "(int)__s + DAT_00088f14" (cast_expression "(int)__s" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0002a220(__s);" (call_expression "FUN_0002a220(__s)" identifier (argument_list "(__s)" ( identifier ))) ;) })) })))) (if_statement "if (cVar5 != '\0') goto LAB_00037094;" if (parenthesized_expression "(cVar5 != '\0')" ( (binary_expression "cVar5 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00037094;" goto statement_identifier ;)) })) }) (else_clause "else {\n    FUN_0003e1c0(PTR_DAT_0007ff6c);\n    if (DAT_00088f58[-1] == 10) {\n      FUN_00029290();\n    }\n    if (_DAT_00088e00 != 0) goto LAB_00037065;\nLAB_00037094:\n    DAT_00088f48 = 0;\n  }" else (compound_statement "{\n    FUN_0003e1c0(PTR_DAT_0007ff6c);\n    if (DAT_00088f58[-1] == 10) {\n      FUN_00029290();\n    }\n    if (_DAT_00088e00 != 0) goto LAB_00037065;\nLAB_00037094:\n    DAT_00088f48 = 0;\n  }" { (expression_statement "FUN_0003e1c0(PTR_DAT_0007ff6c);" (call_expression "FUN_0003e1c0(PTR_DAT_0007ff6c)" identifier (argument_list "(PTR_DAT_0007ff6c)" ( identifier ))) ;) (if_statement "if (DAT_00088f58[-1] == 10) {\n      FUN_00029290();\n    }" if (parenthesized_expression "(DAT_00088f58[-1] == 10)" ( (binary_expression "DAT_00088f58[-1] == 10" (subscript_expression "DAT_00088f58[-1]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n      FUN_00029290();\n    }" { (expression_statement "FUN_00029290();" (call_expression "FUN_00029290()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (_DAT_00088e00 != 0) goto LAB_00037065;" if (parenthesized_expression "(_DAT_00088e00 != 0)" ( (binary_expression "_DAT_00088e00 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00037065;" goto statement_identifier ;)) (labeled_statement "LAB_00037094:\n    DAT_00088f48 = 0;" statement_identifier : (expression_statement "DAT_00088f48 = 0;" (assignment_expression "DAT_00088f48 = 0" identifier = number_literal) ;)) }))) (do_statement "do {\n    puVar3 = PTR__sch_istable_0007ff84;\n    pbVar6 = DAT_00088f58 + 1;\n    bVar14 = *DAT_00088f58;\n    uVar15 = (uint)bVar14;\n    DAT_00088f58 = pbVar6;\n    if (0x17 < (byte)(uVar15 - 9)) {\n      bVar4 = (&DAT_000803c0)[uVar15];\n      goto joined_r0x000370d3;\n    }\n  } while ((0x800009U >> (uVar15 - 9 & 0x1f) & 1) != 0);" do (compound_statement "{\n    puVar3 = PTR__sch_istable_0007ff84;\n    pbVar6 = DAT_00088f58 + 1;\n    bVar14 = *DAT_00088f58;\n    uVar15 = (uint)bVar14;\n    DAT_00088f58 = pbVar6;\n    if (0x17 < (byte)(uVar15 - 9)) {\n      bVar4 = (&DAT_000803c0)[uVar15];\n      goto joined_r0x000370d3;\n    }\n  }" { (expression_statement "puVar3 = PTR__sch_istable_0007ff84;" (assignment_expression "puVar3 = PTR__sch_istable_0007ff84" identifier = identifier) ;) (expression_statement "pbVar6 = DAT_00088f58 + 1;" (assignment_expression "pbVar6 = DAT_00088f58 + 1" identifier = (binary_expression "DAT_00088f58 + 1" identifier + number_literal)) ;) (expression_statement "bVar14 = *DAT_00088f58;" (assignment_expression "bVar14 = *DAT_00088f58" identifier = (pointer_expression "*DAT_00088f58" * identifier)) ;) (expression_statement "uVar15 = (uint)bVar14;" (assignment_expression "uVar15 = (uint)bVar14" identifier = (cast_expression "(uint)bVar14" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "DAT_00088f58 = pbVar6;" (assignment_expression "DAT_00088f58 = pbVar6" identifier = identifier) ;) (if_statement "if (0x17 < (byte)(uVar15 - 9)) {\n      bVar4 = (&DAT_000803c0)[uVar15];\n      goto joined_r0x000370d3;\n    }" if (parenthesized_expression "(0x17 < (byte)(uVar15 - 9))" ( (binary_expression "0x17 < (byte)(uVar15 - 9)" number_literal < (call_expression "(byte)(uVar15 - 9)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(uVar15 - 9)" ( (binary_expression "uVar15 - 9" identifier - number_literal) )))) )) (compound_statement "{\n      bVar4 = (&DAT_000803c0)[uVar15];\n      goto joined_r0x000370d3;\n    }" { (expression_statement "bVar4 = (&DAT_000803c0)[uVar15];" (assignment_expression "bVar4 = (&DAT_000803c0)[uVar15]" identifier = (subscript_expression "(&DAT_000803c0)[uVar15]" (parenthesized_expression "(&DAT_000803c0)" ( (pointer_expression "&DAT_000803c0" & identifier) )) [ identifier ])) ;) (goto_statement "goto joined_r0x000370d3;" goto statement_identifier ;) })) }) while (parenthesized_expression "((0x800009U >> (uVar15 - 9 & 0x1f) & 1) != 0)" ( (binary_expression "(0x800009U >> (uVar15 - 9 & 0x1f) & 1) != 0" (parenthesized_expression "(0x800009U >> (uVar15 - 9 & 0x1f) & 1)" ( (binary_expression "0x800009U >> (uVar15 - 9 & 0x1f) & 1" (binary_expression "0x800009U >> (uVar15 - 9 & 0x1f)" number_literal >> (parenthesized_expression "(uVar15 - 9 & 0x1f)" ( (binary_expression "uVar15 - 9 & 0x1f" (binary_expression "uVar15 - 9" identifier - number_literal) & number_literal) ))) & number_literal) )) != number_literal) )) ;) (expression_statement "bVar4 = (&DAT_000803c0)[uVar15];" (assignment_expression "bVar4 = (&DAT_000803c0)[uVar15]" identifier = (subscript_expression "(&DAT_000803c0)[uVar15]" (parenthesized_expression "(&DAT_000803c0)" ( (pointer_expression "&DAT_000803c0" & identifier) )) [ identifier ])) ;) (labeled_statement "joined_r0x000370d3:\n  if (((bVar4 & 2) == 0) && (bVar14 != 0x22)) {\n    if ((&DAT_000802c0)[uVar15] != '\0') goto LAB_00037040;\n    if ((PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0) {\n      iVar13 = FUN_0001c860();\n      if (iVar13 != 0) goto LAB_00037509;\n      iVar13 = (char)bVar14 + -0x30;\n      bVar4 = *DAT_00088f58;\n      bVar1 = puVar3[(uint)bVar4 * 2];\n      pbVar9 = DAT_00088f58;\n      while ((bVar1 & 4) != 0) {\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }\n      DAT_00088f58 = pbVar9 + 1;\n      if (*pbVar9 == 0x3a) {\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }\n    }\n    DAT_00088f58 = pbVar6;\n    if (bVar14 == 0) goto LAB_00037439;\n    pcVar7 = strchr(PTR_DAT_0007ffa0,(int)(char)bVar14);\n    bVar17 = false;\n    bVar18 = pcVar7 == (char *)0x0;\n    if (bVar18) goto LAB_00037439;\n    local_2c = DAT_00088f58;\n    iVar13 = 4;\n    pbVar6 = DAT_00088f58;\n    pbVar9 = &DAT_0005e3fa;\n    do {\n      if (iVar13 == 0) break;\n      iVar13 = iVar13 + -1;\n      bVar17 = *pbVar6 < *pbVar9;\n      bVar18 = *pbVar6 == *pbVar9;\n      pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;\n      pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;\n    } while (bVar18);\n    if ((!bVar17 && !bVar18) == bVar17) {\n      FUN_00029290();\n      pbVar6 = local_2c + 4;\n      local_2c = pbVar6;\n      pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");\n      if (pbVar9 == (byte *)0x0) {\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }\n      else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }\n      iVar13 = (int)pbVar9 - (int)DAT_00088a1c;\n      DAT_00088a18 = pbVar9;\n      pcVar7 = (char *)xmalloc(iVar13);\n      __s_00 = pcVar7;\n      while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }\n      pcVar7[(int)pcVar10] = '\0';\n      if (local_34 != (byte *)0x0) {\n        free(local_34);\n      }\n      sVar11 = strlen(__s_00);\n      FUN_00038130(local_28,sVar11);\n      FUN_00038310(local_28,__s_00,sVar11);\n      FUN_00028ea0(local_28,DAT_00088f58,0);\n      FUN_000381b0(local_28);\n      pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);\n      DAT_00088a34 = pbVar6;\n      free(__s_00);\n    }\n    else {\n      FUN_00030fc0();\n      pbVar6 = DAT_00088a34;\n    }\n    if (pbVar6 <= DAT_00088f58) goto LAB_00036ffa;\n    goto LAB_00037044;\n  }" statement_identifier : (if_statement "if (((bVar4 & 2) == 0) && (bVar14 != 0x22)) {\n    if ((&DAT_000802c0)[uVar15] != '\0') goto LAB_00037040;\n    if ((PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0) {\n      iVar13 = FUN_0001c860();\n      if (iVar13 != 0) goto LAB_00037509;\n      iVar13 = (char)bVar14 + -0x30;\n      bVar4 = *DAT_00088f58;\n      bVar1 = puVar3[(uint)bVar4 * 2];\n      pbVar9 = DAT_00088f58;\n      while ((bVar1 & 4) != 0) {\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }\n      DAT_00088f58 = pbVar9 + 1;\n      if (*pbVar9 == 0x3a) {\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }\n    }\n    DAT_00088f58 = pbVar6;\n    if (bVar14 == 0) goto LAB_00037439;\n    pcVar7 = strchr(PTR_DAT_0007ffa0,(int)(char)bVar14);\n    bVar17 = false;\n    bVar18 = pcVar7 == (char *)0x0;\n    if (bVar18) goto LAB_00037439;\n    local_2c = DAT_00088f58;\n    iVar13 = 4;\n    pbVar6 = DAT_00088f58;\n    pbVar9 = &DAT_0005e3fa;\n    do {\n      if (iVar13 == 0) break;\n      iVar13 = iVar13 + -1;\n      bVar17 = *pbVar6 < *pbVar9;\n      bVar18 = *pbVar6 == *pbVar9;\n      pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;\n      pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;\n    } while (bVar18);\n    if ((!bVar17 && !bVar18) == bVar17) {\n      FUN_00029290();\n      pbVar6 = local_2c + 4;\n      local_2c = pbVar6;\n      pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");\n      if (pbVar9 == (byte *)0x0) {\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }\n      else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }\n      iVar13 = (int)pbVar9 - (int)DAT_00088a1c;\n      DAT_00088a18 = pbVar9;\n      pcVar7 = (char *)xmalloc(iVar13);\n      __s_00 = pcVar7;\n      while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }\n      pcVar7[(int)pcVar10] = '\0';\n      if (local_34 != (byte *)0x0) {\n        free(local_34);\n      }\n      sVar11 = strlen(__s_00);\n      FUN_00038130(local_28,sVar11);\n      FUN_00038310(local_28,__s_00,sVar11);\n      FUN_00028ea0(local_28,DAT_00088f58,0);\n      FUN_000381b0(local_28);\n      pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);\n      DAT_00088a34 = pbVar6;\n      free(__s_00);\n    }\n    else {\n      FUN_00030fc0();\n      pbVar6 = DAT_00088a34;\n    }\n    if (pbVar6 <= DAT_00088f58) goto LAB_00036ffa;\n    goto LAB_00037044;\n  }" if (parenthesized_expression "(((bVar4 & 2) == 0) && (bVar14 != 0x22))" ( (binary_expression "((bVar4 & 2) == 0) && (bVar14 != 0x22)" (parenthesized_expression "((bVar4 & 2) == 0)" ( (binary_expression "(bVar4 & 2) == 0" (parenthesized_expression "(bVar4 & 2)" ( (binary_expression "bVar4 & 2" identifier & number_literal) )) == number_literal) )) && (parenthesized_expression "(bVar14 != 0x22)" ( (binary_expression "bVar14 != 0x22" identifier != number_literal) ))) )) (compound_statement "{\n    if ((&DAT_000802c0)[uVar15] != '\0') goto LAB_00037040;\n    if ((PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0) {\n      iVar13 = FUN_0001c860();\n      if (iVar13 != 0) goto LAB_00037509;\n      iVar13 = (char)bVar14 + -0x30;\n      bVar4 = *DAT_00088f58;\n      bVar1 = puVar3[(uint)bVar4 * 2];\n      pbVar9 = DAT_00088f58;\n      while ((bVar1 & 4) != 0) {\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }\n      DAT_00088f58 = pbVar9 + 1;\n      if (*pbVar9 == 0x3a) {\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }\n    }\n    DAT_00088f58 = pbVar6;\n    if (bVar14 == 0) goto LAB_00037439;\n    pcVar7 = strchr(PTR_DAT_0007ffa0,(int)(char)bVar14);\n    bVar17 = false;\n    bVar18 = pcVar7 == (char *)0x0;\n    if (bVar18) goto LAB_00037439;\n    local_2c = DAT_00088f58;\n    iVar13 = 4;\n    pbVar6 = DAT_00088f58;\n    pbVar9 = &DAT_0005e3fa;\n    do {\n      if (iVar13 == 0) break;\n      iVar13 = iVar13 + -1;\n      bVar17 = *pbVar6 < *pbVar9;\n      bVar18 = *pbVar6 == *pbVar9;\n      pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;\n      pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;\n    } while (bVar18);\n    if ((!bVar17 && !bVar18) == bVar17) {\n      FUN_00029290();\n      pbVar6 = local_2c + 4;\n      local_2c = pbVar6;\n      pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");\n      if (pbVar9 == (byte *)0x0) {\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }\n      else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }\n      iVar13 = (int)pbVar9 - (int)DAT_00088a1c;\n      DAT_00088a18 = pbVar9;\n      pcVar7 = (char *)xmalloc(iVar13);\n      __s_00 = pcVar7;\n      while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }\n      pcVar7[(int)pcVar10] = '\0';\n      if (local_34 != (byte *)0x0) {\n        free(local_34);\n      }\n      sVar11 = strlen(__s_00);\n      FUN_00038130(local_28,sVar11);\n      FUN_00038310(local_28,__s_00,sVar11);\n      FUN_00028ea0(local_28,DAT_00088f58,0);\n      FUN_000381b0(local_28);\n      pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);\n      DAT_00088a34 = pbVar6;\n      free(__s_00);\n    }\n    else {\n      FUN_00030fc0();\n      pbVar6 = DAT_00088a34;\n    }\n    if (pbVar6 <= DAT_00088f58) goto LAB_00036ffa;\n    goto LAB_00037044;\n  }" { (if_statement "if ((&DAT_000802c0)[uVar15] != '\0') goto LAB_00037040;" if (parenthesized_expression "((&DAT_000802c0)[uVar15] != '\0')" ( (binary_expression "(&DAT_000802c0)[uVar15] != '\0'" (subscript_expression "(&DAT_000802c0)[uVar15]" (parenthesized_expression "(&DAT_000802c0)" ( (pointer_expression "&DAT_000802c0" & identifier) )) [ identifier ]) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00037040;" goto statement_identifier ;)) (if_statement "if ((PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0) {\n      iVar13 = FUN_0001c860();\n      if (iVar13 != 0) goto LAB_00037509;\n      iVar13 = (char)bVar14 + -0x30;\n      bVar4 = *DAT_00088f58;\n      bVar1 = puVar3[(uint)bVar4 * 2];\n      pbVar9 = DAT_00088f58;\n      while ((bVar1 & 4) != 0) {\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }\n      DAT_00088f58 = pbVar9 + 1;\n      if (*pbVar9 == 0x3a) {\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }\n    }" if (parenthesized_expression "((PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0)" ( (binary_expression "(PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0" (parenthesized_expression "(PTR__sch_istable_0007ff84[uVar15 * 2] & 4)" ( (binary_expression "PTR__sch_istable_0007ff84[uVar15 * 2] & 4" (subscript_expression "PTR__sch_istable_0007ff84[uVar15 * 2]" identifier [ (binary_expression "uVar15 * 2" identifier * number_literal) ]) & number_literal) )) != number_literal) )) (compound_statement "{\n      iVar13 = FUN_0001c860();\n      if (iVar13 != 0) goto LAB_00037509;\n      iVar13 = (char)bVar14 + -0x30;\n      bVar4 = *DAT_00088f58;\n      bVar1 = puVar3[(uint)bVar4 * 2];\n      pbVar9 = DAT_00088f58;\n      while ((bVar1 & 4) != 0) {\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }\n      DAT_00088f58 = pbVar9 + 1;\n      if (*pbVar9 == 0x3a) {\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }\n    }" { (expression_statement "iVar13 = FUN_0001c860();" (assignment_expression "iVar13 = FUN_0001c860()" identifier = (call_expression "FUN_0001c860()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar13 != 0) goto LAB_00037509;" if (parenthesized_expression "(iVar13 != 0)" ( (binary_expression "iVar13 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00037509;" goto statement_identifier ;)) (expression_statement "iVar13 = (char)bVar14 + -0x30;" (assignment_expression "iVar13 = (char)bVar14 + -0x30" identifier = (binary_expression "(char)bVar14 + -0x30" (cast_expression "(char)bVar14" ( (type_descriptor "char" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "bVar4 = *DAT_00088f58;" (assignment_expression "bVar4 = *DAT_00088f58" identifier = (pointer_expression "*DAT_00088f58" * identifier)) ;) (expression_statement "bVar1 = puVar3[(uint)bVar4 * 2];" (assignment_expression "bVar1 = puVar3[(uint)bVar4 * 2]" identifier = (subscript_expression "puVar3[(uint)bVar4 * 2]" identifier [ (binary_expression "(uint)bVar4 * 2" (cast_expression "(uint)bVar4" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal) ])) ;) (expression_statement "pbVar9 = DAT_00088f58;" (assignment_expression "pbVar9 = DAT_00088f58" identifier = identifier) ;) (while_statement "while ((bVar1 & 4) != 0) {\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }" while (parenthesized_expression "((bVar1 & 4) != 0)" ( (binary_expression "(bVar1 & 4) != 0" (parenthesized_expression "(bVar1 & 4)" ( (binary_expression "bVar1 & 4" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }" { (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;" (assignment_expression "iVar13 = (char)bVar4 + -0x30 + iVar13 * 10" identifier = (binary_expression "(char)bVar4 + -0x30 + iVar13 * 10" (binary_expression "(char)bVar4 + -0x30" (cast_expression "(char)bVar4" ( (type_descriptor "char" primitive_type) ) identifier) + number_literal) + (binary_expression "iVar13 * 10" identifier * number_literal))) ;) (expression_statement "bVar4 = *pbVar9;" (assignment_expression "bVar4 = *pbVar9" identifier = (pointer_expression "*pbVar9" * identifier)) ;) (expression_statement "bVar1 = puVar3[(uint)bVar4 * 2];" (assignment_expression "bVar1 = puVar3[(uint)bVar4 * 2]" identifier = (subscript_expression "puVar3[(uint)bVar4 * 2]" identifier [ (binary_expression "(uint)bVar4 * 2" (cast_expression "(uint)bVar4" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal) ])) ;) })) (expression_statement "DAT_00088f58 = pbVar9 + 1;" (assignment_expression "DAT_00088f58 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (if_statement "if (*pbVar9 == 0x3a) {\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }" if (parenthesized_expression "(*pbVar9 == 0x3a)" ( (binary_expression "*pbVar9 == 0x3a" (pointer_expression "*pbVar9" * identifier) == number_literal) )) (compound_statement "{\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }" { (expression_statement "FUN_0003a8d0(iVar13);" (call_expression "FUN_0003a8d0(iVar13)" identifier (argument_list "(iVar13)" ( identifier ))) ;) (expression_statement "uVar12 = FUN_0003aa40(iVar13,0);" (assignment_expression "uVar12 = FUN_0003aa40(iVar13,0)" identifier = (call_expression "FUN_0003aa40(iVar13,0)" identifier (argument_list "(iVar13,0)" ( identifier , number_literal )))) ;) (expression_statement "FUN_0003d480(uVar12);" (call_expression "FUN_0003d480(uVar12)" identifier (argument_list "(uVar12)" ( identifier ))) ;) (expression_statement "pbVar6 = DAT_00088f58;" (assignment_expression "pbVar6 = DAT_00088f58" identifier = identifier) ;) (goto_statement "goto LAB_00037040;" goto statement_identifier ;) })) })) (expression_statement "DAT_00088f58 = pbVar6;" (assignment_expression "DAT_00088f58 = pbVar6" identifier = identifier) ;) (if_statement "if (bVar14 == 0) goto LAB_00037439;" if (parenthesized_expression "(bVar14 == 0)" ( (binary_expression "bVar14 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00037439;" goto statement_identifier ;)) (expression_statement "pcVar7 = strchr(PTR_DAT_0007ffa0,(int)(char)bVar14);" (assignment_expression "pcVar7 = strchr(PTR_DAT_0007ffa0,(int)(char)bVar14)" identifier = (call_expression "strchr(PTR_DAT_0007ffa0,(int)(char)bVar14)" identifier (argument_list "(PTR_DAT_0007ffa0,(int)(char)bVar14)" ( identifier , (cast_expression "(int)(char)bVar14" ( (type_descriptor "int" primitive_type) ) (cast_expression "(char)bVar14" ( (type_descriptor "char" primitive_type) ) identifier)) )))) ;) (expression_statement "bVar17 = false;" (assignment_expression "bVar17 = false" identifier = false) ;) (expression_statement "bVar18 = pcVar7 == (char *)0x0;" (assignment_expression "bVar18 = pcVar7 == (char *)0x0" identifier = (binary_expression "pcVar7 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (if_statement "if (bVar18) goto LAB_00037439;" if (parenthesized_expression "(bVar18)" ( identifier )) (goto_statement "goto LAB_00037439;" goto statement_identifier ;)) (expression_statement "local_2c = DAT_00088f58;" (assignment_expression "local_2c = DAT_00088f58" identifier = identifier) ;) (expression_statement "iVar13 = 4;" (assignment_expression "iVar13 = 4" identifier = number_literal) ;) (expression_statement "pbVar6 = DAT_00088f58;" (assignment_expression "pbVar6 = DAT_00088f58" identifier = identifier) ;) (expression_statement "pbVar9 = &DAT_0005e3fa;" (assignment_expression "pbVar9 = &DAT_0005e3fa" identifier = (pointer_expression "&DAT_0005e3fa" & identifier)) ;) (do_statement "do {\n      if (iVar13 == 0) break;\n      iVar13 = iVar13 + -1;\n      bVar17 = *pbVar6 < *pbVar9;\n      bVar18 = *pbVar6 == *pbVar9;\n      pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;\n      pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;\n    } while (bVar18);" do (compound_statement "{\n      if (iVar13 == 0) break;\n      iVar13 = iVar13 + -1;\n      bVar17 = *pbVar6 < *pbVar9;\n      bVar18 = *pbVar6 == *pbVar9;\n      pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;\n      pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;\n    }" { (if_statement "if (iVar13 == 0) break;" if (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar13 = iVar13 + -1;" (assignment_expression "iVar13 = iVar13 + -1" identifier = (binary_expression "iVar13 + -1" identifier + number_literal)) ;) (expression_statement "bVar17 = *pbVar6 < *pbVar9;" (assignment_expression "bVar17 = *pbVar6 < *pbVar9" identifier = (binary_expression "*pbVar6 < *pbVar9" (pointer_expression "*pbVar6" * identifier) < (pointer_expression "*pbVar9" * identifier))) ;) (expression_statement "bVar18 = *pbVar6 == *pbVar9;" (assignment_expression "bVar18 = *pbVar6 == *pbVar9" identifier = (binary_expression "*pbVar6 == *pbVar9" (pointer_expression "*pbVar6" * identifier) == (pointer_expression "*pbVar9" * identifier))) ;) (expression_statement "pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;" (assignment_expression "pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1" identifier = (binary_expression "pbVar6 + (uint)bVar19 * -2 + 1" (binary_expression "pbVar6 + (uint)bVar19 * -2" identifier + (binary_expression "(uint)bVar19 * -2" (cast_expression "(uint)bVar19" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1" identifier = (binary_expression "pbVar9 + (uint)bVar19 * -2 + 1" (binary_expression "pbVar9 + (uint)bVar19 * -2" identifier + (binary_expression "(uint)bVar19 * -2" (cast_expression "(uint)bVar19" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar18)" ( identifier )) ;) (if_statement "if ((!bVar17 && !bVar18) == bVar17) {\n      FUN_00029290();\n      pbVar6 = local_2c + 4;\n      local_2c = pbVar6;\n      pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");\n      if (pbVar9 == (byte *)0x0) {\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }\n      else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }\n      iVar13 = (int)pbVar9 - (int)DAT_00088a1c;\n      DAT_00088a18 = pbVar9;\n      pcVar7 = (char *)xmalloc(iVar13);\n      __s_00 = pcVar7;\n      while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }\n      pcVar7[(int)pcVar10] = '\0';\n      if (local_34 != (byte *)0x0) {\n        free(local_34);\n      }\n      sVar11 = strlen(__s_00);\n      FUN_00038130(local_28,sVar11);\n      FUN_00038310(local_28,__s_00,sVar11);\n      FUN_00028ea0(local_28,DAT_00088f58,0);\n      FUN_000381b0(local_28);\n      pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);\n      DAT_00088a34 = pbVar6;\n      free(__s_00);\n    }\n    else {\n      FUN_00030fc0();\n      pbVar6 = DAT_00088a34;\n    }" if (parenthesized_expression "((!bVar17 && !bVar18) == bVar17)" ( (binary_expression "(!bVar17 && !bVar18) == bVar17" (parenthesized_expression "(!bVar17 && !bVar18)" ( (binary_expression "!bVar17 && !bVar18" (unary_expression "!bVar17" ! identifier) && (unary_expression "!bVar18" ! identifier)) )) == identifier) )) (compound_statement "{\n      FUN_00029290();\n      pbVar6 = local_2c + 4;\n      local_2c = pbVar6;\n      pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");\n      if (pbVar9 == (byte *)0x0) {\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }\n      else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }\n      iVar13 = (int)pbVar9 - (int)DAT_00088a1c;\n      DAT_00088a18 = pbVar9;\n      pcVar7 = (char *)xmalloc(iVar13);\n      __s_00 = pcVar7;\n      while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }\n      pcVar7[(int)pcVar10] = '\0';\n      if (local_34 != (byte *)0x0) {\n        free(local_34);\n      }\n      sVar11 = strlen(__s_00);\n      FUN_00038130(local_28,sVar11);\n      FUN_00038310(local_28,__s_00,sVar11);\n      FUN_00028ea0(local_28,DAT_00088f58,0);\n      FUN_000381b0(local_28);\n      pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);\n      DAT_00088a34 = pbVar6;\n      free(__s_00);\n    }" { (expression_statement "FUN_00029290();" (call_expression "FUN_00029290()" identifier (argument_list "()" ( ))) ;) (expression_statement "pbVar6 = local_2c + 4;" (assignment_expression "pbVar6 = local_2c + 4" identifier = (binary_expression "local_2c + 4" identifier + number_literal)) ;) (expression_statement "local_2c = pbVar6;" (assignment_expression "local_2c = pbVar6" identifier = identifier) ;) (expression_statement "pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");" (assignment_expression "pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n")" identifier = (cast_expression "(byte *)strstr((char *)pbVar6,"#NO_APP\n")" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "strstr((char *)pbVar6,"#NO_APP\n")" identifier (argument_list "((char *)pbVar6,"#NO_APP\n")" ( (cast_expression "(char *)pbVar6" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""#NO_APP\n"" " string_content escape_sequence ") ))))) ;) (if_statement "if (pbVar9 == (byte *)0x0) {\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }\n      else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }" if (parenthesized_expression "(pbVar9 == (byte *)0x0)" ( (binary_expression "pbVar9 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }" { (expression_statement "sVar11 = (int)DAT_00088a34 - (int)pbVar6;" (assignment_expression "sVar11 = (int)DAT_00088a34 - (int)pbVar6" identifier = (binary_expression "(int)DAT_00088a34 - (int)pbVar6" (cast_expression "(int)DAT_00088a34" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar6" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "local_34 = (byte *)xmalloc(sVar11 + 1);" (assignment_expression "local_34 = (byte *)xmalloc(sVar11 + 1)" identifier = (cast_expression "(byte *)xmalloc(sVar11 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(sVar11 + 1)" identifier (argument_list "(sVar11 + 1)" ( (binary_expression "sVar11 + 1" identifier + number_literal) ))))) ;) (expression_statement "memcpy(local_34,local_2c,sVar11);" (call_expression "memcpy(local_34,local_2c,sVar11)" identifier (argument_list "(local_34,local_2c,sVar11)" ( identifier , identifier , identifier ))) ;) (while_statement "while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }" while (parenthesized_expression "(pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0)" ( (comma_expression "pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0" (assignment_expression "pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38)" identifier = (cast_expression "(byte *)FUN_00028fd0(&DAT_00088a38)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00028fd0(&DAT_00088a38)" identifier (argument_list "(&DAT_00088a38)" ( (pointer_expression "&DAT_00088a38" & identifier) ))))) , (comma_expression "pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0" (assignment_expression "pbVar6 = DAT_00088a38" identifier = identifier) , (binary_expression "pbVar9 != (byte *)0x0" identifier != (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)))) )) (compound_statement "{\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }" { (expression_statement "DAT_00088f58 = DAT_00088a38;" (assignment_expression "DAT_00088f58 = DAT_00088a38" identifier = identifier) ;) (expression_statement "DAT_00088a34 = pbVar9;" (assignment_expression "DAT_00088a34 = pbVar9" identifier = identifier) ;) (expression_statement "pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");" (assignment_expression "pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n")" identifier = (call_expression "strstr((char *)DAT_00088a38,"#NO_APP\n")" identifier (argument_list "((char *)DAT_00088a38,"#NO_APP\n")" ( (cast_expression "(char *)DAT_00088a38" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""#NO_APP\n"" " string_content escape_sequence ") )))) ;) (if_statement "if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }" if (parenthesized_expression "(pcVar7 != (char *)0x0)" ( (binary_expression "pcVar7 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }" { (expression_statement "sVar16 = (int)pcVar7 - (int)pbVar6;" (assignment_expression "sVar16 = (int)pcVar7 - (int)pbVar6" identifier = (binary_expression "(int)pcVar7 - (int)pbVar6" (cast_expression "(int)pcVar7" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar6" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "sVar8 = sVar11 + sVar16;" (assignment_expression "sVar8 = sVar11 + sVar16" identifier = (binary_expression "sVar11 + sVar16" identifier + identifier)) ;) (expression_statement "local_34 = (byte *)xrealloc(local_34,sVar8);" (assignment_expression "local_34 = (byte *)xrealloc(local_34,sVar8)" identifier = (cast_expression "(byte *)xrealloc(local_34,sVar8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xrealloc(local_34,sVar8)" identifier (argument_list "(local_34,sVar8)" ( identifier , identifier ))))) ;) (expression_statement "memcpy(local_34 + sVar11,DAT_00088a38,sVar16);" (call_expression "memcpy(local_34 + sVar11,DAT_00088a38,sVar16)" identifier (argument_list "(local_34 + sVar11,DAT_00088a38,sVar16)" ( (binary_expression "local_34 + sVar11" identifier + identifier) , identifier , identifier ))) ;) (expression_statement "DAT_00088f58 = (byte *)(pcVar7 + 8);" (assignment_expression "DAT_00088f58 = (byte *)(pcVar7 + 8)" identifier = (cast_expression "(byte *)(pcVar7 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar7 + 8)" ( (binary_expression "pcVar7 + 8" identifier + number_literal) )))) ;) (expression_statement "sVar11 = sVar8;" (assignment_expression "sVar11 = sVar8" identifier = identifier) ;) (goto_statement "goto LAB_00037b57;" goto statement_identifier ;) })) (expression_statement "sVar16 = (int)pbVar9 - (int)pbVar6;" (assignment_expression "sVar16 = (int)pbVar9 - (int)pbVar6" identifier = (binary_expression "(int)pbVar9 - (int)pbVar6" (cast_expression "(int)pbVar9" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar6" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "sVar8 = sVar11 + sVar16;" (assignment_expression "sVar8 = sVar11 + sVar16" identifier = (binary_expression "sVar11 + sVar16" identifier + identifier)) ;) (expression_statement "local_34 = (byte *)xrealloc(local_34,sVar8);" (assignment_expression "local_34 = (byte *)xrealloc(local_34,sVar8)" identifier = (cast_expression "(byte *)xrealloc(local_34,sVar8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xrealloc(local_34,sVar8)" identifier (argument_list "(local_34,sVar8)" ( identifier , identifier ))))) ;) (expression_statement "memcpy(local_34 + sVar11,DAT_00088a38,sVar16);" (call_expression "memcpy(local_34 + sVar11,DAT_00088a38,sVar16)" identifier (argument_list "(local_34 + sVar11,DAT_00088a38,sVar16)" ( (binary_expression "local_34 + sVar11" identifier + identifier) , identifier , identifier ))) ;) (expression_statement "sVar11 = sVar8;" (assignment_expression "sVar11 = sVar8" identifier = identifier) ;) })) (expression_statement "DAT_00088f58 = (byte *)0x0;" (assignment_expression "DAT_00088f58 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_00037b57:\n        local_2c = local_34;" statement_identifier : (expression_statement "local_2c = local_34;" (assignment_expression "local_2c = local_34" identifier = identifier) ;)) (expression_statement "pbVar9 = local_34 + sVar11;" (assignment_expression "pbVar9 = local_34 + sVar11" identifier = (binary_expression "local_34 + sVar11" identifier + identifier)) ;) (expression_statement "DAT_00088a1c = local_34;" (assignment_expression "DAT_00088a1c = local_34" identifier = identifier) ;) }) (else_clause "else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }" else (compound_statement "{\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }" { (expression_statement "DAT_00088f58 = pbVar9 + 8;" (assignment_expression "DAT_00088f58 = pbVar9 + 8" identifier = (binary_expression "pbVar9 + 8" identifier + number_literal)) ;) (expression_statement "local_34 = (byte *)0x0;" (assignment_expression "local_34 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "DAT_00088a1c = pbVar6;" (assignment_expression "DAT_00088a1c = pbVar6" identifier = identifier) ;) }))) (expression_statement "iVar13 = (int)pbVar9 - (int)DAT_00088a1c;" (assignment_expression "iVar13 = (int)pbVar9 - (int)DAT_00088a1c" identifier = (binary_expression "(int)pbVar9 - (int)DAT_00088a1c" (cast_expression "(int)pbVar9" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)DAT_00088a1c" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "DAT_00088a18 = pbVar9;" (assignment_expression "DAT_00088a18 = pbVar9" identifier = identifier) ;) (expression_statement "pcVar7 = (char *)xmalloc(iVar13);" (assignment_expression "pcVar7 = (char *)xmalloc(iVar13)" identifier = (cast_expression "(char *)xmalloc(iVar13)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(iVar13)" identifier (argument_list "(iVar13)" ( identifier ))))) ;) (expression_statement "__s_00 = pcVar7;" (assignment_expression "__s_00 = pcVar7" identifier = identifier) ;) (while_statement "while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }" while (parenthesized_expression "(pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10)" ( (comma_expression "pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10" (assignment_expression "pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7))" identifier = (cast_expression "(char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7))" identifier (argument_list "(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7))" ( identifier , identifier , (binary_expression "__s_00 + (iVar13 - (int)pcVar7)" identifier + (parenthesized_expression "(iVar13 - (int)pcVar7)" ( (binary_expression "iVar13 - (int)pcVar7" identifier - (cast_expression "(int)pcVar7" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ))))) , (binary_expression "__s_00 + (iVar13 - (int)pcVar7) <= pcVar10" (binary_expression "__s_00 + (iVar13 - (int)pcVar7)" identifier + (parenthesized_expression "(iVar13 - (int)pcVar7)" ( (binary_expression "iVar13 - (int)pcVar7" identifier - (cast_expression "(int)pcVar7" ( (type_descriptor "int" primitive_type) ) identifier)) ))) <= identifier)) )) (compound_statement "{\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }" { (expression_statement "__s_00 = (char *)xrealloc(__s_00,iVar13 + 100);" (assignment_expression "__s_00 = (char *)xrealloc(__s_00,iVar13 + 100)" identifier = (cast_expression "(char *)xrealloc(__s_00,iVar13 + 100)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xrealloc(__s_00,iVar13 + 100)" identifier (argument_list "(__s_00,iVar13 + 100)" ( identifier , (binary_expression "iVar13 + 100" identifier + number_literal) ))))) ;) (expression_statement "pcVar7 = __s_00 + iVar13;" (assignment_expression "pcVar7 = __s_00 + iVar13" identifier = (binary_expression "__s_00 + iVar13" identifier + identifier)) ;) (expression_statement "iVar13 = iVar13 + 100;" (assignment_expression "iVar13 = iVar13 + 100" identifier = (binary_expression "iVar13 + 100" identifier + number_literal)) ;) })) (expression_statement "pcVar7[(int)pcVar10] = '\0';" (assignment_expression "pcVar7[(int)pcVar10] = '\0'" (subscript_expression "pcVar7[(int)pcVar10]" identifier [ (cast_expression "(int)pcVar10" ( (type_descriptor "int" primitive_type) ) identifier) ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (if_statement "if (local_34 != (byte *)0x0) {\n        free(local_34);\n      }" if (parenthesized_expression "(local_34 != (byte *)0x0)" ( (binary_expression "local_34 != (byte *)0x0" identifier != (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        free(local_34);\n      }" { (expression_statement "free(local_34);" (call_expression "free(local_34)" identifier (argument_list "(local_34)" ( identifier ))) ;) })) (expression_statement "sVar11 = strlen(__s_00);" (assignment_expression "sVar11 = strlen(__s_00)" identifier = (call_expression "strlen(__s_00)" identifier (argument_list "(__s_00)" ( identifier )))) ;) (expression_statement "FUN_00038130(local_28,sVar11);" (call_expression "FUN_00038130(local_28,sVar11)" identifier (argument_list "(local_28,sVar11)" ( identifier , identifier ))) ;) (expression_statement "FUN_00038310(local_28,__s_00,sVar11);" (call_expression "FUN_00038310(local_28,__s_00,sVar11)" identifier (argument_list "(local_28,__s_00,sVar11)" ( identifier , identifier , identifier ))) ;) (expression_statement "FUN_00028ea0(local_28,DAT_00088f58,0);" (call_expression "FUN_00028ea0(local_28,DAT_00088f58,0)" identifier (argument_list "(local_28,DAT_00088f58,0)" ( identifier , identifier , number_literal ))) ;) (expression_statement "FUN_000381b0(local_28);" (call_expression "FUN_000381b0(local_28)" identifier (argument_list "(local_28)" ( identifier ))) ;) (expression_statement "pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);" (assignment_expression "pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58)" identifier = (cast_expression "(byte *)FUN_00028fd0(&DAT_00088f58)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00028fd0(&DAT_00088f58)" identifier (argument_list "(&DAT_00088f58)" ( (pointer_expression "&DAT_00088f58" & identifier) ))))) ;) (expression_statement "DAT_00088a34 = pbVar6;" (assignment_expression "DAT_00088a34 = pbVar6" identifier = identifier) ;) (expression_statement "free(__s_00);" (call_expression "free(__s_00)" identifier (argument_list "(__s_00)" ( identifier ))) ;) }) (else_clause "else {\n      FUN_00030fc0();\n      pbVar6 = DAT_00088a34;\n    }" else (compound_statement "{\n      FUN_00030fc0();\n      pbVar6 = DAT_00088a34;\n    }" { (expression_statement "FUN_00030fc0();" (call_expression "FUN_00030fc0()" identifier (argument_list "()" ( ))) ;) (expression_statement "pbVar6 = DAT_00088a34;" (assignment_expression "pbVar6 = DAT_00088a34" identifier = identifier) ;) }))) (if_statement "if (pbVar6 <= DAT_00088f58) goto LAB_00036ffa;" if (parenthesized_expression "(pbVar6 <= DAT_00088f58)" ( (binary_expression "pbVar6 <= DAT_00088f58" identifier <= identifier) )) (goto_statement "goto LAB_00036ffa;" goto statement_identifier ;)) (goto_statement "goto LAB_00037044;" goto statement_identifier ;) }))) (expression_statement "iVar13 = FUN_0001c860();" (assignment_expression "iVar13 = FUN_0001c860()" identifier = (call_expression "FUN_0001c860()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar13 != 0) {\n    pbVar9 = (byte *)FUN_0002f7d0(0);\n    if (DAT_00088f58 <= DAT_00088a34) goto LAB_00037376;\n    goto LAB_0003737c;\n  }" if (parenthesized_expression "(iVar13 != 0)" ( (binary_expression "iVar13 != 0" identifier != number_literal) )) (compound_statement "{\n    pbVar9 = (byte *)FUN_0002f7d0(0);\n    if (DAT_00088f58 <= DAT_00088a34) goto LAB_00037376;\n    goto LAB_0003737c;\n  }" { (expression_statement "pbVar9 = (byte *)FUN_0002f7d0(0);" (assignment_expression "pbVar9 = (byte *)FUN_0002f7d0(0)" identifier = (cast_expression "(byte *)FUN_0002f7d0(0)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0002f7d0(0)" identifier (argument_list "(0)" ( number_literal ))))) ;) (if_statement "if (DAT_00088f58 <= DAT_00088a34) goto LAB_00037376;" if (parenthesized_expression "(DAT_00088f58 <= DAT_00088a34)" ( (binary_expression "DAT_00088f58 <= DAT_00088a34" identifier <= identifier) )) (goto_statement "goto LAB_00037376;" goto statement_identifier ;)) (goto_statement "goto LAB_0003737c;" goto statement_identifier ;) })) (expression_statement "DAT_00088f58 = DAT_00088f58 + -1;" (assignment_expression "DAT_00088f58 = DAT_00088f58 + -1" identifier = (binary_expression "DAT_00088f58 + -1" identifier + number_literal)) ;) (expression_statement "bVar4 = FUN_00025220(&local_2c);" (assignment_expression "bVar4 = FUN_00025220(&local_2c)" identifier = (call_expression "FUN_00025220(&local_2c)" identifier (argument_list "(&local_2c)" ( (pointer_expression "&local_2c" & identifier) )))) ;) (expression_statement "pbVar6 = local_2c;" (assignment_expression "pbVar6 = local_2c" identifier = identifier) ;) (expression_statement "iVar13 = 1;" (assignment_expression "iVar13 = 1" identifier = number_literal) ;) (expression_statement "bVar14 = bVar4;" (assignment_expression "bVar14 = bVar4" identifier = identifier) ;) (if_statement "if (bVar4 == 0x22) {\n    bVar14 = DAT_00088f58[1];\n    iVar13 = 2;\n  }" if (parenthesized_expression "(bVar4 == 0x22)" ( (binary_expression "bVar4 == 0x22" identifier == number_literal) )) (compound_statement "{\n    bVar14 = DAT_00088f58[1];\n    iVar13 = 2;\n  }" { (expression_statement "bVar14 = DAT_00088f58[1];" (assignment_expression "bVar14 = DAT_00088f58[1]" identifier = (subscript_expression "DAT_00088f58[1]" identifier [ number_literal ])) ;) (expression_statement "iVar13 = 2;" (assignment_expression "iVar13 = 2" identifier = number_literal) ;) })) (expression_statement "pbVar9 = DAT_00088f58 + iVar13;" (assignment_expression "pbVar9 = DAT_00088f58 + iVar13" identifier = (binary_expression "DAT_00088f58 + iVar13" identifier + identifier)) ;) (if_statement "if (bVar14 == 0x3a) {\n    DAT_00088f48 = FUN_0003d480(local_2c);\n    FUN_00027230((int)(char)bVar4);\n    pbVar6 = DAT_00088f58 + 1;\n    if (DAT_00088f58[1] == 0x20) {\n      pbVar6 = DAT_00088f58 + 2;\n    }\n    goto LAB_00037040;\n  }" if (parenthesized_expression "(bVar14 == 0x3a)" ( (binary_expression "bVar14 == 0x3a" identifier == number_literal) )) (compound_statement "{\n    DAT_00088f48 = FUN_0003d480(local_2c);\n    FUN_00027230((int)(char)bVar4);\n    pbVar6 = DAT_00088f58 + 1;\n    if (DAT_00088f58[1] == 0x20) {\n      pbVar6 = DAT_00088f58 + 2;\n    }\n    goto LAB_00037040;\n  }" { (expression_statement "DAT_00088f48 = FUN_0003d480(local_2c);" (assignment_expression "DAT_00088f48 = FUN_0003d480(local_2c)" identifier = (call_expression "FUN_0003d480(local_2c)" identifier (argument_list "(local_2c)" ( identifier )))) ;) (expression_statement "FUN_00027230((int)(char)bVar4);" (call_expression "FUN_00027230((int)(char)bVar4)" identifier (argument_list "((int)(char)bVar4)" ( (cast_expression "(int)(char)bVar4" ( (type_descriptor "int" primitive_type) ) (cast_expression "(char)bVar4" ( (type_descriptor "char" primitive_type) ) identifier)) ))) ;) (expression_statement "pbVar6 = DAT_00088f58 + 1;" (assignment_expression "pbVar6 = DAT_00088f58 + 1" identifier = (binary_expression "DAT_00088f58 + 1" identifier + number_literal)) ;) (if_statement "if (DAT_00088f58[1] == 0x20) {\n      pbVar6 = DAT_00088f58 + 2;\n    }" if (parenthesized_expression "(DAT_00088f58[1] == 0x20)" ( (binary_expression "DAT_00088f58[1] == 0x20" (subscript_expression "DAT_00088f58[1]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n      pbVar6 = DAT_00088f58 + 2;\n    }" { (expression_statement "pbVar6 = DAT_00088f58 + 2;" (assignment_expression "pbVar6 = DAT_00088f58 + 2" identifier = (binary_expression "DAT_00088f58 + 2" identifier + number_literal)) ;) })) (goto_statement "goto LAB_00037040;" goto statement_identifier ;) })) (if_statement "if (bVar14 == 0x3d) {\n    if (*pbVar9 == 0x3d) goto LAB_00037691;\nLAB_0003746c:\n    uVar12 = 1;\n  }\n  else {\n    if (((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d)) {\n      strncpy(&DAT_00088f60,(char *)local_2c,0x80);\n      puVar3 = PTR__sch_tolower_0007ffcc;\n      DAT_00088fdf = 0;\n      bVar14 = *pbVar6;\n      if (bVar14 == 0) goto LAB_0003726e;\n      do {\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      } while (bVar14 != 0);\n      if (*local_2c == 0x2e) {\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }\n      goto LAB_00037040;\n    }\n    if (pbVar9[1] != 0x3d) goto LAB_0003746c;\nLAB_00037691:\n    uVar12 = 0xffffffff;\n  }" if (parenthesized_expression "(bVar14 == 0x3d)" ( (binary_expression "bVar14 == 0x3d" identifier == number_literal) )) (compound_statement "{\n    if (*pbVar9 == 0x3d) goto LAB_00037691;\nLAB_0003746c:\n    uVar12 = 1;\n  }" { (if_statement "if (*pbVar9 == 0x3d) goto LAB_00037691;" if (parenthesized_expression "(*pbVar9 == 0x3d)" ( (binary_expression "*pbVar9 == 0x3d" (pointer_expression "*pbVar9" * identifier) == number_literal) )) (goto_statement "goto LAB_00037691;" goto statement_identifier ;)) (labeled_statement "LAB_0003746c:\n    uVar12 = 1;" statement_identifier : (expression_statement "uVar12 = 1;" (assignment_expression "uVar12 = 1" identifier = number_literal) ;)) }) (else_clause "else {\n    if (((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d)) {\n      strncpy(&DAT_00088f60,(char *)local_2c,0x80);\n      puVar3 = PTR__sch_tolower_0007ffcc;\n      DAT_00088fdf = 0;\n      bVar14 = *pbVar6;\n      if (bVar14 == 0) goto LAB_0003726e;\n      do {\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      } while (bVar14 != 0);\n      if (*local_2c == 0x2e) {\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }\n      goto LAB_00037040;\n    }\n    if (pbVar9[1] != 0x3d) goto LAB_0003746c;\nLAB_00037691:\n    uVar12 = 0xffffffff;\n  }" else (compound_statement "{\n    if (((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d)) {\n      strncpy(&DAT_00088f60,(char *)local_2c,0x80);\n      puVar3 = PTR__sch_tolower_0007ffcc;\n      DAT_00088fdf = 0;\n      bVar14 = *pbVar6;\n      if (bVar14 == 0) goto LAB_0003726e;\n      do {\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      } while (bVar14 != 0);\n      if (*local_2c == 0x2e) {\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }\n      goto LAB_00037040;\n    }\n    if (pbVar9[1] != 0x3d) goto LAB_0003746c;\nLAB_00037691:\n    uVar12 = 0xffffffff;\n  }" { (if_statement "if (((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d)) {\n      strncpy(&DAT_00088f60,(char *)local_2c,0x80);\n      puVar3 = PTR__sch_tolower_0007ffcc;\n      DAT_00088fdf = 0;\n      bVar14 = *pbVar6;\n      if (bVar14 == 0) goto LAB_0003726e;\n      do {\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      } while (bVar14 != 0);\n      if (*local_2c == 0x2e) {\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }\n      goto LAB_00037040;\n    }" if (parenthesized_expression "(((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d))" ( (binary_expression "((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d)" (parenthesized_expression "((bVar14 != 0x20) && (bVar14 != 9))" ( (binary_expression "(bVar14 != 0x20) && (bVar14 != 9)" (parenthesized_expression "(bVar14 != 0x20)" ( (binary_expression "bVar14 != 0x20" identifier != number_literal) )) && (parenthesized_expression "(bVar14 != 9)" ( (binary_expression "bVar14 != 9" identifier != number_literal) ))) )) || (parenthesized_expression "(*pbVar9 != 0x3d)" ( (binary_expression "*pbVar9 != 0x3d" (pointer_expression "*pbVar9" * identifier) != number_literal) ))) )) (compound_statement "{\n      strncpy(&DAT_00088f60,(char *)local_2c,0x80);\n      puVar3 = PTR__sch_tolower_0007ffcc;\n      DAT_00088fdf = 0;\n      bVar14 = *pbVar6;\n      if (bVar14 == 0) goto LAB_0003726e;\n      do {\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      } while (bVar14 != 0);\n      if (*local_2c == 0x2e) {\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }\n      goto LAB_00037040;\n    }" { (expression_statement "strncpy(&DAT_00088f60,(char *)local_2c,0x80);" (call_expression "strncpy(&DAT_00088f60,(char *)local_2c,0x80)" identifier (argument_list "(&DAT_00088f60,(char *)local_2c,0x80)" ( (pointer_expression "&DAT_00088f60" & identifier) , (cast_expression "(char *)local_2c" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , number_literal ))) ;) (expression_statement "puVar3 = PTR__sch_tolower_0007ffcc;" (assignment_expression "puVar3 = PTR__sch_tolower_0007ffcc" identifier = identifier) ;) (expression_statement "DAT_00088fdf = 0;" (assignment_expression "DAT_00088fdf = 0" identifier = number_literal) ;) (expression_statement "bVar14 = *pbVar6;" (assignment_expression "bVar14 = *pbVar6" identifier = (pointer_expression "*pbVar6" * identifier)) ;) (if_statement "if (bVar14 == 0) goto LAB_0003726e;" if (parenthesized_expression "(bVar14 == 0)" ( (binary_expression "bVar14 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0003726e;" goto statement_identifier ;)) (do_statement "do {\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      } while (bVar14 != 0);" do (compound_statement "{\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      }" { (expression_statement "*pbVar6 = puVar3[bVar14];" (assignment_expression "*pbVar6 = puVar3[bVar14]" (pointer_expression "*pbVar6" * identifier) = (subscript_expression "puVar3[bVar14]" identifier [ identifier ])) ;) (expression_statement "bVar14 = pbVar6[1];" (assignment_expression "bVar14 = pbVar6[1]" identifier = (subscript_expression "pbVar6[1]" identifier [ number_literal ])) ;) (expression_statement "pbVar6 = pbVar6 + 1;" (assignment_expression "pbVar6 = pbVar6 + 1" identifier = (binary_expression "pbVar6 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar14 != 0)" ( (binary_expression "bVar14 != 0" identifier != number_literal) )) ;) (if_statement "if (*local_2c == 0x2e) {\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }" if (parenthesized_expression "(*local_2c == 0x2e)" ( (binary_expression "*local_2c == 0x2e" (pointer_expression "*local_2c" * identifier) == number_literal) )) (compound_statement "{\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }" { (expression_statement "iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);" (assignment_expression "iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1)" identifier = (call_expression "FUN_000283e0(DAT_00088a28,local_2c + 1)" identifier (argument_list "(DAT_00088a28,local_2c + 1)" ( identifier , (binary_expression "local_2c + 1" identifier + number_literal) )))) ;) (if_statement "if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }" if (parenthesized_expression "((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0))" ( (binary_expression "(iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)" (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) || (parenthesized_expression "(pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)" ( (comma_expression "pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0" (assignment_expression "pcVar2 = *(code **)(iVar13 + 4)" identifier = (pointer_expression "*(code **)(iVar13 + 4)" * (cast_expression "(code **)(iVar13 + 4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar13 + 4)" ( (binary_expression "iVar13 + 4" identifier + number_literal) ))))) , (binary_expression "pcVar2 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ))) )) (compound_statement "{\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }" { (if_statement "if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }" if (parenthesized_expression "(DAT_00088a30 != 0)" ( (binary_expression "DAT_00088a30 != 0" identifier != number_literal) )) (compound_statement "{\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }" { (expression_statement "FUN_000307b0(1,0,0,0);" (call_expression "FUN_000307b0(1,0,0,0)" identifier (argument_list "(1,0,0,0)" ( number_literal , number_literal , number_literal , number_literal ))) ;) (expression_statement "DAT_00088a30 = 0;" (assignment_expression "DAT_00088a30 = 0" identifier = number_literal) ;) (if_statement "if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }" if (parenthesized_expression "(DAT_00088f48 != 0)" ( (binary_expression "DAT_00088f48 != 0" identifier != number_literal) )) (compound_statement "{\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }" { (expression_statement "FUN_0003e160(DAT_00088f48,DAT_00088e84);" (call_expression "FUN_0003e160(DAT_00088f48,DAT_00088e84)" identifier (argument_list "(DAT_00088f48,DAT_00088e84)" ( identifier , identifier ))) ;) (expression_statement "uVar20 = FUN_00027cf0();" (assignment_expression "uVar20 = FUN_00027cf0()" identifier = (call_expression "FUN_00027cf0()" identifier (argument_list "()" ( )))) ;) (expression_statement "FUN_0003ae10(DAT_00088f48,uVar20);" (call_expression "FUN_0003ae10(DAT_00088f48,uVar20)" identifier (argument_list "(DAT_00088f48,uVar20)" ( identifier , identifier ))) ;) })) })) (expression_statement "pbVar9 = DAT_00088f58;" (assignment_expression "pbVar9 = DAT_00088f58" identifier = identifier) ;) (expression_statement "FUN_00027230((int)(char)bVar4);" (call_expression "FUN_00027230((int)(char)bVar4)" identifier (argument_list "((int)(char)bVar4)" ( (cast_expression "(int)(char)bVar4" ( (type_descriptor "int" primitive_type) ) (cast_expression "(char)bVar4" ( (type_descriptor "char" primitive_type) ) identifier)) ))) ;) (expression_statement "FUN_00030fc0();" (call_expression "FUN_00030fc0()" identifier (argument_list "()" ( ))) ;) (expression_statement "bVar14 = DAT_00088f58[-1];" (assignment_expression "bVar14 = DAT_00088f58[-1]" identifier = (subscript_expression "DAT_00088f58[-1]" identifier [ number_literal ])) ;) (expression_statement "pbVar6 = DAT_00088f58 + -1;" (assignment_expression "pbVar6 = DAT_00088f58 + -1" identifier = (binary_expression "DAT_00088f58 + -1" identifier + number_literal)) ;) (expression_statement "DAT_00088f58 = DAT_00088f58 + -1;" (assignment_expression "DAT_00088f58 = DAT_00088f58 + -1" identifier = (binary_expression "DAT_00088f58 + -1" identifier + number_literal)) ;) (expression_statement "*pbVar6 = 0;" (assignment_expression "*pbVar6 = 0" (pointer_expression "*pbVar6" * identifier) = number_literal) ;) (if_statement "if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }" if (parenthesized_expression "((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))" ( (binary_expression "(DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)" (parenthesized_expression "(DAT_00088f1c == 0)" ( (binary_expression "DAT_00088f1c == 0" identifier == number_literal) )) || (parenthesized_expression "(iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)" ( (comma_expression "iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0" (assignment_expression "iVar13 = FUN_0002fa10()" identifier = (call_expression "FUN_0002fa10()" identifier (argument_list "()" ( )))) , (comma_expression "pbVar6 = DAT_00088f58, iVar13 == 0" (assignment_expression "pbVar6 = DAT_00088f58" identifier = identifier) , (binary_expression "iVar13 == 0" identifier == number_literal))) ))) )) (compound_statement "{\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }" { (expression_statement "pbVar6 = local_2c;" (assignment_expression "pbVar6 = local_2c" identifier = identifier) ;) (expression_statement "*pbVar9 = 0;" (assignment_expression "*pbVar9 = 0" (pointer_expression "*pbVar9" * identifier) = number_literal) ;) (expression_statement "uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);" (assignment_expression "uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5)" identifier = (call_expression "dcgettext(0,"unknown pseudo-op: `%s\'",5)" identifier (argument_list "(0,"unknown pseudo-op: `%s\'",5)" ( number_literal , (string_literal ""unknown pseudo-op: `%s\'"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "FUN_0002ec90(uVar12,pbVar6);" (call_expression "FUN_0002ec90(uVar12,pbVar6)" identifier (argument_list "(uVar12,pbVar6)" ( identifier , identifier ))) ;) (expression_statement "pbVar6 = DAT_00088f58 + 1;" (assignment_expression "pbVar6 = DAT_00088f58 + 1" identifier = (binary_expression "DAT_00088f58 + 1" identifier + number_literal)) ;) (expression_statement "*DAT_00088f58 = bVar14;" (assignment_expression "*DAT_00088f58 = bVar14" (pointer_expression "*DAT_00088f58" * identifier) = identifier) ;) (expression_statement "DAT_00088f58 = pbVar6;" (assignment_expression "DAT_00088f58 = pbVar6" identifier = identifier) ;) (expression_statement "pbVar6 = DAT_00088f58;" (assignment_expression "pbVar6 = DAT_00088f58" identifier = identifier) ;) })) }) (else_clause "else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }" else (compound_statement "{\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }" { (if_statement "if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }" if (parenthesized_expression "((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0))))))" ( (binary_expression "(DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))" (parenthesized_expression "(DAT_00088a30 != 0)" ( (binary_expression "DAT_00088a30 != 0" identifier != number_literal) )) && (parenthesized_expression "((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))" ( (parenthesized_expression "(((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0))))" ( (binary_expression "((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))" (parenthesized_expression "((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))" ( (binary_expression "(pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1)" (parenthesized_expression "(pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910))" ( (binary_expression "pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)" (binary_expression "pcVar2 != FUN_00034160" identifier != identifier) && (parenthesized_expression "(pcVar2 != FUN_00034910)" ( (binary_expression "pcVar2 != FUN_00034910" identifier != identifier) ))) )) || (parenthesized_expression "(*(int *)(iVar13 + 8) != 1)" ( (binary_expression "*(int *)(iVar13 + 8) != 1" (pointer_expression "*(int *)(iVar13 + 8)" * (cast_expression "(int *)(iVar13 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar13 + 8)" ( (binary_expression "iVar13 + 8" identifier + number_literal) )))) != number_literal) ))) )) && (parenthesized_expression "(((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))" ( (parenthesized_expression "((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0))" ( (binary_expression "(((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)" (binary_expression "(((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60" (parenthesized_expression "(((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c)" ( (binary_expression "((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c" (parenthesized_expression "((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94)" ( (binary_expression "(((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94" (parenthesized_expression "(((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4)" ( (binary_expression "((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4" (parenthesized_expression "((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4)" ( (binary_expression "(pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4" (parenthesized_expression "(pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4)" ( (binary_expression "pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4" (binary_expression "pcVar2 != (code *)PTR_FUN_0007ff74" identifier != (cast_expression "(code *)PTR_FUN_0007ff74" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) && (binary_expression "pcVar2 != (code *)PTR_FUN_0007fff4" identifier != (cast_expression "(code *)PTR_FUN_0007fff4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) )) && (binary_expression "pcVar2 != (code *)PTR_FUN_0007ffd4" identifier != (cast_expression "(code *)PTR_FUN_0007ffd4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) )) && (binary_expression "pcVar2 != (code *)PTR_FUN_0007ffc4" identifier != (cast_expression "(code *)PTR_FUN_0007ffc4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) )) && (binary_expression "pcVar2 != (code *)PTR_FUN_0007ff94" identifier != (cast_expression "(code *)PTR_FUN_0007ff94" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) )) && (binary_expression "pcVar2 != (code *)PTR_FUN_0007ff5c" identifier != (cast_expression "(code *)PTR_FUN_0007ff5c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) )) && (binary_expression "pcVar2 != FUN_00035b60" identifier != identifier)) && (parenthesized_expression "(pcVar2 != thunk_FUN_00030fc0)" ( (binary_expression "pcVar2 != thunk_FUN_00030fc0" identifier != identifier) ))) )) ))) )) ))) )) (compound_statement "{\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }" { (expression_statement "FUN_000307b0(1,0,0,0);" (call_expression "FUN_000307b0(1,0,0,0)" identifier (argument_list "(1,0,0,0)" ( number_literal , number_literal , number_literal , number_literal ))) ;) (expression_statement "DAT_00088a30 = 0;" (assignment_expression "DAT_00088a30 = 0" identifier = number_literal) ;) (if_statement "if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }" if (parenthesized_expression "(DAT_00088f48 != 0)" ( (binary_expression "DAT_00088f48 != 0" identifier != number_literal) )) (compound_statement "{\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }" { (expression_statement "FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);" (call_expression "FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX)" identifier (argument_list "(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX)" ( identifier , identifier , identifier , identifier ))) ;) (expression_statement "uVar20 = FUN_00027cf0();" (assignment_expression "uVar20 = FUN_00027cf0()" identifier = (call_expression "FUN_00027cf0()" identifier (argument_list "()" ( )))) ;) (expression_statement "FUN_0003ae10(DAT_00088f48,uVar20);" (call_expression "FUN_0003ae10(DAT_00088f48,uVar20)" identifier (argument_list "(DAT_00088f48,uVar20)" ( identifier , identifier ))) ;) })) })) (expression_statement "cVar5 = FUN_00027230((int)(char)bVar4);" (assignment_expression "cVar5 = FUN_00027230((int)(char)bVar4)" identifier = (call_expression "FUN_00027230((int)(char)bVar4)" identifier (argument_list "((int)(char)bVar4)" ( (cast_expression "(int)(char)bVar4" ( (type_descriptor "int" primitive_type) ) (cast_expression "(char)bVar4" ( (type_descriptor "char" primitive_type) ) identifier)) )))) ;) (if_statement "if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }" if (parenthesized_expression "((cVar5 == ' ') || (cVar5 == '\t'))" ( (binary_expression "(cVar5 == ' ') || (cVar5 == '\t')" (parenthesized_expression "(cVar5 == ' ')" ( (binary_expression "cVar5 == ' '" identifier == (char_literal "' '" ' character ')) )) || (parenthesized_expression "(cVar5 == '\t')" ( (binary_expression "cVar5 == '\t'" identifier == (char_literal "'\t'" ' escape_sequence ')) ))) )) (compound_statement "{\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }" { (expression_statement "DAT_00088f58 = DAT_00088f58 + 1;" (assignment_expression "DAT_00088f58 = DAT_00088f58 + 1" identifier = (binary_expression "DAT_00088f58 + 1" identifier + number_literal)) ;) })) (expression_statement "(**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));" (call_expression "(**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8))" (parenthesized_expression "(**(code **)(iVar13 + 4))" ( (pointer_expression "**(code **)(iVar13 + 4)" * (pointer_expression "*(code **)(iVar13 + 4)" * (cast_expression "(code **)(iVar13 + 4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar13 + 4)" ( (binary_expression "iVar13 + 4" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar13 + 8))" ( (pointer_expression "*(undefined4 *)(iVar13 + 8)" * (cast_expression "(undefined4 *)(iVar13 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar13 + 8)" ( (binary_expression "iVar13 + 8" identifier + number_literal) )))) ))) ;) (expression_statement "pbVar6 = DAT_00088f58;" (assignment_expression "pbVar6 = DAT_00088f58" identifier = identifier) ;) (if_statement "if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;" if (parenthesized_expression "(*(code **)(iVar13 + 4) == FUN_000300b0)" ( (binary_expression "*(code **)(iVar13 + 4) == FUN_000300b0" (pointer_expression "*(code **)(iVar13 + 4)" * (cast_expression "(code **)(iVar13 + 4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar13 + 4)" ( (binary_expression "iVar13 + 4" identifier + number_literal) )))) == identifier) )) (goto_statement "goto LAB_00037649;" goto statement_identifier ;)) }))) }) (else_clause "else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }" else (compound_statement "{\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }" { (labeled_statement "LAB_0003726e:\n        FUN_00027230((int)(char)bVar4);" statement_identifier : (expression_statement "FUN_00027230((int)(char)bVar4);" (call_expression "FUN_00027230((int)(char)bVar4)" identifier (argument_list "((int)(char)bVar4)" ( (cast_expression "(int)(char)bVar4" ( (type_descriptor "int" primitive_type) ) (cast_expression "(char)bVar4" ( (type_descriptor "char" primitive_type) ) identifier)) ))) ;)) (expression_statement "DAT_00088f58 = (byte *)FUN_0002f7d0(0);" (assignment_expression "DAT_00088f58 = (byte *)FUN_0002f7d0(0)" identifier = (cast_expression "(byte *)FUN_0002f7d0(0)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0002f7d0(0)" identifier (argument_list "(0)" ( number_literal ))))) ;) (expression_statement "bVar14 = *DAT_00088f58;" (assignment_expression "bVar14 = *DAT_00088f58" identifier = (pointer_expression "*DAT_00088f58" * identifier)) ;) (expression_statement "*DAT_00088f58 = 0;" (assignment_expression "*DAT_00088f58 = 0" (pointer_expression "*DAT_00088f58" * identifier) = number_literal) ;) (expression_statement "FUN_00036f40();" (call_expression "FUN_00036f40()" identifier (argument_list "()" ( ))) ;) (if_statement "if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }" if (parenthesized_expression "((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))" ( (binary_expression "(DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)" (parenthesized_expression "(DAT_00088f1c == 0)" ( (binary_expression "DAT_00088f1c == 0" identifier == number_literal) )) || (parenthesized_expression "(iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)" ( (comma_expression "iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0" (assignment_expression "iVar13 = FUN_0002fa10()" identifier = (call_expression "FUN_0002fa10()" identifier (argument_list "()" ( )))) , (comma_expression "pbVar6 = DAT_00088f58, iVar13 == 0" (assignment_expression "pbVar6 = DAT_00088f58" identifier = identifier) , (binary_expression "iVar13 == 0" identifier == number_literal))) ))) )) (compound_statement "{\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }" { (if_statement "if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }" if (parenthesized_expression "(DAT_00088a30 != 0)" ( (binary_expression "DAT_00088a30 != 0" identifier != number_literal) )) (compound_statement "{\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }" { (expression_statement "FUN_000307b0(1,0,0,0);" (call_expression "FUN_000307b0(1,0,0,0)" identifier (argument_list "(1,0,0,0)" ( number_literal , number_literal , number_literal , number_literal ))) ;) (expression_statement "DAT_00088a30 = 0;" (assignment_expression "DAT_00088a30 = 0" identifier = number_literal) ;) (if_statement "if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }" if (parenthesized_expression "(DAT_00088f48 != 0)" ( (binary_expression "DAT_00088f48 != 0" identifier != number_literal) )) (compound_statement "{\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }" { (expression_statement "FUN_0003e160(DAT_00088f48,DAT_00088e84);" (call_expression "FUN_0003e160(DAT_00088f48,DAT_00088e84)" identifier (argument_list "(DAT_00088f48,DAT_00088e84)" ( identifier , identifier ))) ;) (expression_statement "uVar20 = FUN_00027cf0();" (assignment_expression "uVar20 = FUN_00027cf0()" identifier = (call_expression "FUN_00027cf0()" identifier (argument_list "()" ( )))) ;) (expression_statement "FUN_0003ae10(DAT_00088f48,uVar20);" (call_expression "FUN_0003ae10(DAT_00088f48,uVar20)" identifier (argument_list "(DAT_00088f48,uVar20)" ( identifier , identifier ))) ;) })) })) (expression_statement "FUN_00048cd0(local_2c);" (call_expression "FUN_00048cd0(local_2c)" identifier (argument_list "(local_2c)" ( identifier ))) ;) (if_statement "if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }" if (parenthesized_expression "(DAT_00088f58 == (byte *)0x0)" ( (binary_expression "DAT_00088f58 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }" { (expression_statement "uVar12 = dcgettext(0,"unable to continue with assembly.",5);" (assignment_expression "uVar12 = dcgettext(0,"unable to continue with assembly.",5)" identifier = (call_expression "dcgettext(0,"unable to continue with assembly.",5)" identifier (argument_list "(0,"unable to continue with assembly.",5)" ( number_literal , (string_literal ""unable to continue with assembly."" " string_content ") , number_literal )))) ;) (expression_statement "FUN_0002ed30(uVar12);" (call_expression "FUN_0002ed30(uVar12)" identifier (argument_list "(uVar12)" ( identifier ))) ;) })) (expression_statement "pbVar6 = DAT_00088f58 + 1;" (assignment_expression "pbVar6 = DAT_00088f58 + 1" identifier = (binary_expression "DAT_00088f58 + 1" identifier + number_literal)) ;) (expression_statement "*DAT_00088f58 = bVar14;" (assignment_expression "*DAT_00088f58 = bVar14" (pointer_expression "*DAT_00088f58" * identifier) = identifier) ;) (expression_statement "DAT_00088f58 = pbVar6;" (assignment_expression "DAT_00088f58 = pbVar6" identifier = identifier) ;) (expression_statement "pbVar6 = DAT_00088f58;" (assignment_expression "pbVar6 = DAT_00088f58" identifier = identifier) ;) })) }))) (goto_statement "goto LAB_00037040;" goto statement_identifier ;) })) (if_statement "if (pbVar9[1] != 0x3d) goto LAB_0003746c;" if (parenthesized_expression "(pbVar9[1] != 0x3d)" ( (binary_expression "pbVar9[1] != 0x3d" (subscript_expression "pbVar9[1]" identifier [ number_literal ]) != number_literal) )) (goto_statement "goto LAB_0003746c;" goto statement_identifier ;)) (labeled_statement "LAB_00037691:\n    uVar12 = 0xffffffff;" statement_identifier : (expression_statement "uVar12 = 0xffffffff;" (assignment_expression "uVar12 = 0xffffffff" identifier = number_literal) ;)) }))) (expression_statement "FUN_00036d70(local_2c,uVar12);" (call_expression "FUN_00036d70(local_2c,uVar12)" identifier (argument_list "(local_2c,uVar12)" ( identifier , identifier ))) ;) (expression_statement "FUN_00031210();" (call_expression "FUN_00031210()" identifier (argument_list "()" ( ))) ;) (expression_statement "pbVar6 = DAT_00088f58;" (assignment_expression "pbVar6 = DAT_00088f58" identifier = identifier) ;) (goto_statement "goto LAB_00037040;" goto statement_identifier ;) (labeled_statement "LAB_00037439:\n  iVar13 = FUN_0001c860();" statement_identifier : (expression_statement "iVar13 = FUN_0001c860();" (assignment_expression "iVar13 = FUN_0001c860()" identifier = (call_expression "FUN_0001c860()" identifier (argument_list "()" ( )))) ;)) (if_statement "if (iVar13 == 0) {\n    DAT_00088f58 = DAT_00088f58 + -1;\n    FUN_00031210();\n    pbVar6 = DAT_00088f58;\n    goto LAB_00037040;\n  }" if (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) (compound_statement "{\n    DAT_00088f58 = DAT_00088f58 + -1;\n    FUN_00031210();\n    pbVar6 = DAT_00088f58;\n    goto LAB_00037040;\n  }" { (expression_statement "DAT_00088f58 = DAT_00088f58 + -1;" (assignment_expression "DAT_00088f58 = DAT_00088f58 + -1" identifier = (binary_expression "DAT_00088f58 + -1" identifier + number_literal)) ;) (expression_statement "FUN_00031210();" (call_expression "FUN_00031210()" identifier (argument_list "()" ( ))) ;) (expression_statement "pbVar6 = DAT_00088f58;" (assignment_expression "pbVar6 = DAT_00088f58" identifier = identifier) ;) (goto_statement "goto LAB_00037040;" goto statement_identifier ;) })) (labeled_statement "LAB_00037509:\n  pbVar9 = (byte *)FUN_0002f7d0(0);" statement_identifier : (expression_statement "pbVar9 = (byte *)FUN_0002f7d0(0);" (assignment_expression "pbVar9 = (byte *)FUN_0002f7d0(0)" identifier = (cast_expression "(byte *)FUN_0002f7d0(0)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0002f7d0(0)" identifier (argument_list "(0)" ( number_literal ))))) ;)) (if_statement "if (DAT_00088f58 <= DAT_00088a34) {\nLAB_00037376:\n    pbVar6 = DAT_00088a34;\n    if (DAT_00088a34 <= pbVar9) goto LAB_00037040;\n  }" if (parenthesized_expression "(DAT_00088f58 <= DAT_00088a34)" ( (binary_expression "DAT_00088f58 <= DAT_00088a34" identifier <= identifier) )) (compound_statement "{\nLAB_00037376:\n    pbVar6 = DAT_00088a34;\n    if (DAT_00088a34 <= pbVar9) goto LAB_00037040;\n  }" { (labeled_statement "LAB_00037376:\n    pbVar6 = DAT_00088a34;" statement_identifier : (expression_statement "pbVar6 = DAT_00088a34;" (assignment_expression "pbVar6 = DAT_00088a34" identifier = identifier) ;)) (if_statement "if (DAT_00088a34 <= pbVar9) goto LAB_00037040;" if (parenthesized_expression "(DAT_00088a34 <= pbVar9)" ( (binary_expression "DAT_00088a34 <= pbVar9" identifier <= identifier) )) (goto_statement "goto LAB_00037040;" goto statement_identifier ;)) })) (labeled_statement "LAB_0003737c:\n  pbVar6 = pbVar9 + 1;" statement_identifier : (expression_statement "pbVar6 = pbVar9 + 1;" (assignment_expression "pbVar6 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;)) (goto_statement "goto LAB_00037040;" goto statement_identifier ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE 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 (array_declarator IDENT [ LIT ]) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (labeled_statement statement_identifier : (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (pointer_expression & IDENT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;)) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (binary_expression IDENT != LIT) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (string_literal " string_content ") ))) ;) (return_statement return ;) })) (return_statement return ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) }) while (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (subscript_expression (parenthesized_expression ( (pointer_expression & IDENT) )) [ (subscript_expression IDENT [ LIT ]) ])) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) || (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (binary_expression (binary_expression IDENT + IDENT) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT , IDENT ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) + LIT) ))) , IDENT , IDENT ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) + IDENT) + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) })))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) })) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) }))) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT - LIT) )))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression (parenthesized_expression ( (pointer_expression & IDENT) )) [ IDENT ])) ;) (goto_statement goto statement_identifier ;) })) }) while (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression LIT >> (parenthesized_expression ( (binary_expression (binary_expression IDENT - LIT) & LIT) ))) & LIT) )) != LIT) )) ;) (expression_statement (assignment_expression IDENT = (subscript_expression (parenthesized_expression ( (pointer_expression & IDENT) )) [ IDENT ])) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) && (parenthesized_expression ( (binary_expression IDENT != LIT) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression (parenthesized_expression ( (pointer_expression & IDENT) )) [ IDENT ]) != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ (binary_expression IDENT * LIT) ]) & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) ])) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (while_statement while (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) + (binary_expression IDENT * LIT))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) ])) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) 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 )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (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 (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 { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content escape_sequence ") ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (while_statement while (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (pointer_expression & IDENT) ))))) , (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)))) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content escape_sequence ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , IDENT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + IDENT) , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , IDENT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + IDENT) , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }))) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (while_statement while (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , IDENT , (binary_expression IDENT + (parenthesized_expression ( (binary_expression IDENT - (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) ))))) , (binary_expression (binary_expression IDENT + (parenthesized_expression ( (binary_expression IDENT - (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) <= IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (expression_statement (assignment_expression (subscript_expression IDENT [ (cast_expression ( (type_descriptor TYPE) ) IDENT) ]) = (char_literal ' escape_sequence ')) ;) (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 = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , LIT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (pointer_expression & IDENT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) }))) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression & IDENT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = LIT) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (binary_expression IDENT != LIT) ))) )) || (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , LIT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (do_statement do (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (subscript_expression IDENT [ IDENT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != LIT) )) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) , (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT , LIT , LIT , LIT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) })) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) , (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression IDENT == LIT))) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT != IDENT) && (parenthesized_expression ( (binary_expression IDENT != IDENT) ))) )) || (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) && (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) )) && (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) )) && (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) )) && (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) )) && (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) )) && (binary_expression IDENT != IDENT)) && (parenthesized_expression ( (binary_expression IDENT != IDENT) ))) )) ))) )) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT , LIT , LIT , LIT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) })) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (char_literal ' character ')) )) || (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == IDENT) )) (goto_statement goto statement_identifier ;)) }))) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) , (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression IDENT == LIT))) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT , LIT , LIT , LIT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) })) })) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) }))) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) }))) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT ))))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (goto_statement goto statement_identifier ;)) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (goto_statement goto statement_identifier ;) })))
(function_definition "void FUN_00036f80(undefined4 param_1)\n\n{\n  byte bVar1;\n  code *pcVar2;\n  undefined *puVar3;\n  byte bVar4;\n  char cVar5;\n  byte *pbVar6;\n  char *pcVar7;\n  size_t sVar8;\n  void *__s;\n  byte *pbVar9;\n  char *__s_00;\n  char *pcVar10;\n  size_t sVar11;\n  undefined4 uVar12;\n  int iVar13;\n  byte bVar14;\n  uint uVar15;\n  size_t sVar16;\n  undefined4 extraout_EDX;\n  bool bVar17;\n  bool bVar18;\n  byte bVar19;\n  undefined8 uVar20;\n  byte *local_34;\n  byte *local_2c;\n  undefined1 local_28 [24];\n  \n  bVar19 = 0;\n  DAT_00088e0c = 0;\n  DAT_00088a38 = (byte *)FUN_00028de0(param_1);\n  FUN_0002b740(param_1);\n  FUN_0002a220(0);\n  FUN_0001ccd0(param_1);\n  if (DAT_000886b8 == 2) {\n    FUN_00038cd0();\n  }\nLAB_00036ffa:\n  do {\n    DAT_00088a34 = (byte *)FUN_00028fd0(&DAT_00088f58);\n    if (DAT_00088a34 == (byte *)0x0) {\nLAB_00037649:\n      FUN_0003e1c0(PTR_DAT_0007ff6c);\n      FUN_00028fa0();\n      if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }\n      return;\n    }\n    DAT_00088a0c = (byte *)0x0;\n    pbVar6 = DAT_00088f58;\nLAB_00037040:\n    DAT_00088f58 = pbVar6;\n  } while (DAT_00088a34 <= DAT_00088f58);\nLAB_00037044:\n  cVar5 = (&DAT_000802c0)[DAT_00088f58[-1]];\n  if (cVar5 == '\0') {\n    if (_DAT_00088e00 != 0) {\nLAB_00037065:\n      if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {\n        FUN_0002a220(0);\n      }\n      else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }\n      if (cVar5 != '\0') goto LAB_00037094;\n    }\n  }\n  else {\n    FUN_0003e1c0(PTR_DAT_0007ff6c);\n    if (DAT_00088f58[-1] == 10) {\n      FUN_00029290();\n    }\n    if (_DAT_00088e00 != 0) goto LAB_00037065;\nLAB_00037094:\n    DAT_00088f48 = 0;\n  }\n  do {\n    puVar3 = PTR__sch_istable_0007ff84;\n    pbVar6 = DAT_00088f58 + 1;\n    bVar14 = *DAT_00088f58;\n    uVar15 = (uint)bVar14;\n    DAT_00088f58 = pbVar6;\n    if (0x17 < (byte)(uVar15 - 9)) {\n      bVar4 = (&DAT_000803c0)[uVar15];\n      goto joined_r0x000370d3;\n    }\n  } while ((0x800009U >> (uVar15 - 9 & 0x1f) & 1) != 0);\n  bVar4 = (&DAT_000803c0)[uVar15];\njoined_r0x000370d3:\n  if (((bVar4 & 2) == 0) && (bVar14 != 0x22)) {\n    if ((&DAT_000802c0)[uVar15] != '\0') goto LAB_00037040;\n    if ((PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0) {\n      iVar13 = FUN_0001c860();\n      if (iVar13 != 0) goto LAB_00037509;\n      iVar13 = (char)bVar14 + -0x30;\n      bVar4 = *DAT_00088f58;\n      bVar1 = puVar3[(uint)bVar4 * 2];\n      pbVar9 = DAT_00088f58;\n      while ((bVar1 & 4) != 0) {\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }\n      DAT_00088f58 = pbVar9 + 1;\n      if (*pbVar9 == 0x3a) {\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }\n    }\n    DAT_00088f58 = pbVar6;\n    if (bVar14 == 0) goto LAB_00037439;\n    pcVar7 = strchr(PTR_DAT_0007ffa0,(int)(char)bVar14);\n    bVar17 = false;\n    bVar18 = pcVar7 == (char *)0x0;\n    if (bVar18) goto LAB_00037439;\n    local_2c = DAT_00088f58;\n    iVar13 = 4;\n    pbVar6 = DAT_00088f58;\n    pbVar9 = &DAT_0005e3fa;\n    do {\n      if (iVar13 == 0) break;\n      iVar13 = iVar13 + -1;\n      bVar17 = *pbVar6 < *pbVar9;\n      bVar18 = *pbVar6 == *pbVar9;\n      pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;\n      pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;\n    } while (bVar18);\n    if ((!bVar17 && !bVar18) == bVar17) {\n      FUN_00029290();\n      pbVar6 = local_2c + 4;\n      local_2c = pbVar6;\n      pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");\n      if (pbVar9 == (byte *)0x0) {\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }\n      else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }\n      iVar13 = (int)pbVar9 - (int)DAT_00088a1c;\n      DAT_00088a18 = pbVar9;\n      pcVar7 = (char *)xmalloc(iVar13);\n      __s_00 = pcVar7;\n      while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }\n      pcVar7[(int)pcVar10] = '\0';\n      if (local_34 != (byte *)0x0) {\n        free(local_34);\n      }\n      sVar11 = strlen(__s_00);\n      FUN_00038130(local_28,sVar11);\n      FUN_00038310(local_28,__s_00,sVar11);\n      FUN_00028ea0(local_28,DAT_00088f58,0);\n      FUN_000381b0(local_28);\n      pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);\n      DAT_00088a34 = pbVar6;\n      free(__s_00);\n    }\n    else {\n      FUN_00030fc0();\n      pbVar6 = DAT_00088a34;\n    }\n    if (pbVar6 <= DAT_00088f58) goto LAB_00036ffa;\n    goto LAB_00037044;\n  }\n  iVar13 = FUN_0001c860();\n  if (iVar13 != 0) {\n    pbVar9 = (byte *)FUN_0002f7d0(0);\n    if (DAT_00088f58 <= DAT_00088a34) goto LAB_00037376;\n    goto LAB_0003737c;\n  }\n  DAT_00088f58 = DAT_00088f58 + -1;\n  bVar4 = FUN_00025220(&local_2c);\n  pbVar6 = local_2c;\n  iVar13 = 1;\n  bVar14 = bVar4;\n  if (bVar4 == 0x22) {\n    bVar14 = DAT_00088f58[1];\n    iVar13 = 2;\n  }\n  pbVar9 = DAT_00088f58 + iVar13;\n  if (bVar14 == 0x3a) {\n    DAT_00088f48 = FUN_0003d480(local_2c);\n    FUN_00027230((int)(char)bVar4);\n    pbVar6 = DAT_00088f58 + 1;\n    if (DAT_00088f58[1] == 0x20) {\n      pbVar6 = DAT_00088f58 + 2;\n    }\n    goto LAB_00037040;\n  }\n  if (bVar14 == 0x3d) {\n    if (*pbVar9 == 0x3d) goto LAB_00037691;\nLAB_0003746c:\n    uVar12 = 1;\n  }\n  else {\n    if (((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d)) {\n      strncpy(&DAT_00088f60,(char *)local_2c,0x80);\n      puVar3 = PTR__sch_tolower_0007ffcc;\n      DAT_00088fdf = 0;\n      bVar14 = *pbVar6;\n      if (bVar14 == 0) goto LAB_0003726e;\n      do {\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      } while (bVar14 != 0);\n      if (*local_2c == 0x2e) {\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }\n      goto LAB_00037040;\n    }\n    if (pbVar9[1] != 0x3d) goto LAB_0003746c;\nLAB_00037691:\n    uVar12 = 0xffffffff;\n  }\n  FUN_00036d70(local_2c,uVar12);\n  FUN_00031210();\n  pbVar6 = DAT_00088f58;\n  goto LAB_00037040;\nLAB_00037439:\n  iVar13 = FUN_0001c860();\n  if (iVar13 == 0) {\n    DAT_00088f58 = DAT_00088f58 + -1;\n    FUN_00031210();\n    pbVar6 = DAT_00088f58;\n    goto LAB_00037040;\n  }\nLAB_00037509:\n  pbVar9 = (byte *)FUN_0002f7d0(0);\n  if (DAT_00088f58 <= DAT_00088a34) {\nLAB_00037376:\n    pbVar6 = DAT_00088a34;\n    if (DAT_00088a34 <= pbVar9) goto LAB_00037040;\n  }\nLAB_0003737c:\n  pbVar6 = pbVar9 + 1;\n  goto LAB_00037040;\n}" (primitive_type "void") (function_declarator "FUN_00036f80(undefined4 param_1)" (identifier "FUN_00036f80") (parameter_list "(undefined4 param_1)" (( "(") (parameter_declaration "undefined4 param_1" (type_identifier "undefined4") (identifier "param_1")) () ")"))) (compound_statement "{\n  byte bVar1;\n  code *pcVar2;\n  undefined *puVar3;\n  byte bVar4;\n  char cVar5;\n  byte *pbVar6;\n  char *pcVar7;\n  size_t sVar8;\n  void *__s;\n  byte *pbVar9;\n  char *__s_00;\n  char *pcVar10;\n  size_t sVar11;\n  undefined4 uVar12;\n  int iVar13;\n  byte bVar14;\n  uint uVar15;\n  size_t sVar16;\n  undefined4 extraout_EDX;\n  bool bVar17;\n  bool bVar18;\n  byte bVar19;\n  undefined8 uVar20;\n  byte *local_34;\n  byte *local_2c;\n  undefined1 local_28 [24];\n  \n  bVar19 = 0;\n  DAT_00088e0c = 0;\n  DAT_00088a38 = (byte *)FUN_00028de0(param_1);\n  FUN_0002b740(param_1);\n  FUN_0002a220(0);\n  FUN_0001ccd0(param_1);\n  if (DAT_000886b8 == 2) {\n    FUN_00038cd0();\n  }\nLAB_00036ffa:\n  do {\n    DAT_00088a34 = (byte *)FUN_00028fd0(&DAT_00088f58);\n    if (DAT_00088a34 == (byte *)0x0) {\nLAB_00037649:\n      FUN_0003e1c0(PTR_DAT_0007ff6c);\n      FUN_00028fa0();\n      if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }\n      return;\n    }\n    DAT_00088a0c = (byte *)0x0;\n    pbVar6 = DAT_00088f58;\nLAB_00037040:\n    DAT_00088f58 = pbVar6;\n  } while (DAT_00088a34 <= DAT_00088f58);\nLAB_00037044:\n  cVar5 = (&DAT_000802c0)[DAT_00088f58[-1]];\n  if (cVar5 == '\0') {\n    if (_DAT_00088e00 != 0) {\nLAB_00037065:\n      if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {\n        FUN_0002a220(0);\n      }\n      else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }\n      if (cVar5 != '\0') goto LAB_00037094;\n    }\n  }\n  else {\n    FUN_0003e1c0(PTR_DAT_0007ff6c);\n    if (DAT_00088f58[-1] == 10) {\n      FUN_00029290();\n    }\n    if (_DAT_00088e00 != 0) goto LAB_00037065;\nLAB_00037094:\n    DAT_00088f48 = 0;\n  }\n  do {\n    puVar3 = PTR__sch_istable_0007ff84;\n    pbVar6 = DAT_00088f58 + 1;\n    bVar14 = *DAT_00088f58;\n    uVar15 = (uint)bVar14;\n    DAT_00088f58 = pbVar6;\n    if (0x17 < (byte)(uVar15 - 9)) {\n      bVar4 = (&DAT_000803c0)[uVar15];\n      goto joined_r0x000370d3;\n    }\n  } while ((0x800009U >> (uVar15 - 9 & 0x1f) & 1) != 0);\n  bVar4 = (&DAT_000803c0)[uVar15];\njoined_r0x000370d3:\n  if (((bVar4 & 2) == 0) && (bVar14 != 0x22)) {\n    if ((&DAT_000802c0)[uVar15] != '\0') goto LAB_00037040;\n    if ((PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0) {\n      iVar13 = FUN_0001c860();\n      if (iVar13 != 0) goto LAB_00037509;\n      iVar13 = (char)bVar14 + -0x30;\n      bVar4 = *DAT_00088f58;\n      bVar1 = puVar3[(uint)bVar4 * 2];\n      pbVar9 = DAT_00088f58;\n      while ((bVar1 & 4) != 0) {\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }\n      DAT_00088f58 = pbVar9 + 1;\n      if (*pbVar9 == 0x3a) {\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }\n    }\n    DAT_00088f58 = pbVar6;\n    if (bVar14 == 0) goto LAB_00037439;\n    pcVar7 = strchr(PTR_DAT_0007ffa0,(int)(char)bVar14);\n    bVar17 = false;\n    bVar18 = pcVar7 == (char *)0x0;\n    if (bVar18) goto LAB_00037439;\n    local_2c = DAT_00088f58;\n    iVar13 = 4;\n    pbVar6 = DAT_00088f58;\n    pbVar9 = &DAT_0005e3fa;\n    do {\n      if (iVar13 == 0) break;\n      iVar13 = iVar13 + -1;\n      bVar17 = *pbVar6 < *pbVar9;\n      bVar18 = *pbVar6 == *pbVar9;\n      pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;\n      pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;\n    } while (bVar18);\n    if ((!bVar17 && !bVar18) == bVar17) {\n      FUN_00029290();\n      pbVar6 = local_2c + 4;\n      local_2c = pbVar6;\n      pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");\n      if (pbVar9 == (byte *)0x0) {\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }\n      else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }\n      iVar13 = (int)pbVar9 - (int)DAT_00088a1c;\n      DAT_00088a18 = pbVar9;\n      pcVar7 = (char *)xmalloc(iVar13);\n      __s_00 = pcVar7;\n      while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }\n      pcVar7[(int)pcVar10] = '\0';\n      if (local_34 != (byte *)0x0) {\n        free(local_34);\n      }\n      sVar11 = strlen(__s_00);\n      FUN_00038130(local_28,sVar11);\n      FUN_00038310(local_28,__s_00,sVar11);\n      FUN_00028ea0(local_28,DAT_00088f58,0);\n      FUN_000381b0(local_28);\n      pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);\n      DAT_00088a34 = pbVar6;\n      free(__s_00);\n    }\n    else {\n      FUN_00030fc0();\n      pbVar6 = DAT_00088a34;\n    }\n    if (pbVar6 <= DAT_00088f58) goto LAB_00036ffa;\n    goto LAB_00037044;\n  }\n  iVar13 = FUN_0001c860();\n  if (iVar13 != 0) {\n    pbVar9 = (byte *)FUN_0002f7d0(0);\n    if (DAT_00088f58 <= DAT_00088a34) goto LAB_00037376;\n    goto LAB_0003737c;\n  }\n  DAT_00088f58 = DAT_00088f58 + -1;\n  bVar4 = FUN_00025220(&local_2c);\n  pbVar6 = local_2c;\n  iVar13 = 1;\n  bVar14 = bVar4;\n  if (bVar4 == 0x22) {\n    bVar14 = DAT_00088f58[1];\n    iVar13 = 2;\n  }\n  pbVar9 = DAT_00088f58 + iVar13;\n  if (bVar14 == 0x3a) {\n    DAT_00088f48 = FUN_0003d480(local_2c);\n    FUN_00027230((int)(char)bVar4);\n    pbVar6 = DAT_00088f58 + 1;\n    if (DAT_00088f58[1] == 0x20) {\n      pbVar6 = DAT_00088f58 + 2;\n    }\n    goto LAB_00037040;\n  }\n  if (bVar14 == 0x3d) {\n    if (*pbVar9 == 0x3d) goto LAB_00037691;\nLAB_0003746c:\n    uVar12 = 1;\n  }\n  else {\n    if (((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d)) {\n      strncpy(&DAT_00088f60,(char *)local_2c,0x80);\n      puVar3 = PTR__sch_tolower_0007ffcc;\n      DAT_00088fdf = 0;\n      bVar14 = *pbVar6;\n      if (bVar14 == 0) goto LAB_0003726e;\n      do {\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      } while (bVar14 != 0);\n      if (*local_2c == 0x2e) {\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }\n      goto LAB_00037040;\n    }\n    if (pbVar9[1] != 0x3d) goto LAB_0003746c;\nLAB_00037691:\n    uVar12 = 0xffffffff;\n  }\n  FUN_00036d70(local_2c,uVar12);\n  FUN_00031210();\n  pbVar6 = DAT_00088f58;\n  goto LAB_00037040;\nLAB_00037439:\n  iVar13 = FUN_0001c860();\n  if (iVar13 == 0) {\n    DAT_00088f58 = DAT_00088f58 + -1;\n    FUN_00031210();\n    pbVar6 = DAT_00088f58;\n    goto LAB_00037040;\n  }\nLAB_00037509:\n  pbVar9 = (byte *)FUN_0002f7d0(0);\n  if (DAT_00088f58 <= DAT_00088a34) {\nLAB_00037376:\n    pbVar6 = DAT_00088a34;\n    if (DAT_00088a34 <= pbVar9) goto LAB_00037040;\n  }\nLAB_0003737c:\n  pbVar6 = pbVar9 + 1;\n  goto LAB_00037040;\n}" ({ "{") (declaration "byte bVar1;" (type_identifier "byte") (identifier "bVar1") (; ";")) (declaration "code *pcVar2;" (type_identifier "code") (pointer_declarator "*pcVar2" (* "*") (identifier "pcVar2")) (; ";")) (declaration "undefined *puVar3;" (type_identifier "undefined") (pointer_declarator "*puVar3" (* "*") (identifier "puVar3")) (; ";")) (declaration "byte bVar4;" (type_identifier "byte") (identifier "bVar4") (; ";")) (declaration "char cVar5;" (primitive_type "char") (identifier "cVar5") (; ";")) (declaration "byte *pbVar6;" (type_identifier "byte") (pointer_declarator "*pbVar6" (* "*") (identifier "pbVar6")) (; ";")) (declaration "char *pcVar7;" (primitive_type "char") (pointer_declarator "*pcVar7" (* "*") (identifier "pcVar7")) (; ";")) (declaration "size_t sVar8;" (primitive_type "size_t") (identifier "sVar8") (; ";")) (declaration "void *__s;" (primitive_type "void") (pointer_declarator "*__s" (* "*") (identifier "__s")) (; ";")) (declaration "byte *pbVar9;" (type_identifier "byte") (pointer_declarator "*pbVar9" (* "*") (identifier "pbVar9")) (; ";")) (declaration "char *__s_00;" (primitive_type "char") (pointer_declarator "*__s_00" (* "*") (identifier "__s_00")) (; ";")) (declaration "char *pcVar10;" (primitive_type "char") (pointer_declarator "*pcVar10" (* "*") (identifier "pcVar10")) (; ";")) (declaration "size_t sVar11;" (primitive_type "size_t") (identifier "sVar11") (; ";")) (declaration "undefined4 uVar12;" (type_identifier "undefined4") (identifier "uVar12") (; ";")) (declaration "int iVar13;" (primitive_type "int") (identifier "iVar13") (; ";")) (declaration "byte bVar14;" (type_identifier "byte") (identifier "bVar14") (; ";")) (declaration "uint uVar15;" (type_identifier "uint") (identifier "uVar15") (; ";")) (declaration "size_t sVar16;" (primitive_type "size_t") (identifier "sVar16") (; ";")) (declaration "undefined4 extraout_EDX;" (type_identifier "undefined4") (identifier "extraout_EDX") (; ";")) (declaration "bool bVar17;" (primitive_type "bool") (identifier "bVar17") (; ";")) (declaration "bool bVar18;" (primitive_type "bool") (identifier "bVar18") (; ";")) (declaration "byte bVar19;" (type_identifier "byte") (identifier "bVar19") (; ";")) (declaration "undefined8 uVar20;" (type_identifier "undefined8") (identifier "uVar20") (; ";")) (declaration "byte *local_34;" (type_identifier "byte") (pointer_declarator "*local_34" (* "*") (identifier "local_34")) (; ";")) (declaration "byte *local_2c;" (type_identifier "byte") (pointer_declarator "*local_2c" (* "*") (identifier "local_2c")) (; ";")) (declaration "undefined1 local_28 [24];" (type_identifier "undefined1") (array_declarator "local_28 [24]" (identifier "local_28") ([ "[") (number_literal "24") (] "]")) (; ";")) (expression_statement "bVar19 = 0;" (assignment_expression "bVar19 = 0" (identifier "bVar19") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_00088e0c = 0;" (assignment_expression "DAT_00088e0c = 0" (identifier "DAT_00088e0c") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_00088a38 = (byte *)FUN_00028de0(param_1);" (assignment_expression "DAT_00088a38 = (byte *)FUN_00028de0(param_1)" (identifier "DAT_00088a38") (= "=") (cast_expression "(byte *)FUN_00028de0(param_1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00028de0(param_1)" (identifier "FUN_00028de0") (argument_list "(param_1)" (( "(") (identifier "param_1") () ")"))))) (; ";")) (expression_statement "FUN_0002b740(param_1);" (call_expression "FUN_0002b740(param_1)" (identifier "FUN_0002b740") (argument_list "(param_1)" (( "(") (identifier "param_1") () ")"))) (; ";")) (expression_statement "FUN_0002a220(0);" (call_expression "FUN_0002a220(0)" (identifier "FUN_0002a220") (argument_list "(0)" (( "(") (number_literal "0") () ")"))) (; ";")) (expression_statement "FUN_0001ccd0(param_1);" (call_expression "FUN_0001ccd0(param_1)" (identifier "FUN_0001ccd0") (argument_list "(param_1)" (( "(") (identifier "param_1") () ")"))) (; ";")) (if_statement "if (DAT_000886b8 == 2) {\n    FUN_00038cd0();\n  }" (if "if") (parenthesized_expression "(DAT_000886b8 == 2)" (( "(") (binary_expression "DAT_000886b8 == 2" (identifier "DAT_000886b8") (== "==") (number_literal "2")) () ")")) (compound_statement "{\n    FUN_00038cd0();\n  }" ({ "{") (expression_statement "FUN_00038cd0();" (call_expression "FUN_00038cd0()" (identifier "FUN_00038cd0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (labeled_statement "LAB_00036ffa:\n  do {\n    DAT_00088a34 = (byte *)FUN_00028fd0(&DAT_00088f58);\n    if (DAT_00088a34 == (byte *)0x0) {\nLAB_00037649:\n      FUN_0003e1c0(PTR_DAT_0007ff6c);\n      FUN_00028fa0();\n      if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }\n      return;\n    }\n    DAT_00088a0c = (byte *)0x0;\n    pbVar6 = DAT_00088f58;\nLAB_00037040:\n    DAT_00088f58 = pbVar6;\n  } while (DAT_00088a34 <= DAT_00088f58);" (statement_identifier "LAB_00036ffa") (: ":") (do_statement "do {\n    DAT_00088a34 = (byte *)FUN_00028fd0(&DAT_00088f58);\n    if (DAT_00088a34 == (byte *)0x0) {\nLAB_00037649:\n      FUN_0003e1c0(PTR_DAT_0007ff6c);\n      FUN_00028fa0();\n      if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }\n      return;\n    }\n    DAT_00088a0c = (byte *)0x0;\n    pbVar6 = DAT_00088f58;\nLAB_00037040:\n    DAT_00088f58 = pbVar6;\n  } while (DAT_00088a34 <= DAT_00088f58);" (do "do") (compound_statement "{\n    DAT_00088a34 = (byte *)FUN_00028fd0(&DAT_00088f58);\n    if (DAT_00088a34 == (byte *)0x0) {\nLAB_00037649:\n      FUN_0003e1c0(PTR_DAT_0007ff6c);\n      FUN_00028fa0();\n      if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }\n      return;\n    }\n    DAT_00088a0c = (byte *)0x0;\n    pbVar6 = DAT_00088f58;\nLAB_00037040:\n    DAT_00088f58 = pbVar6;\n  }" ({ "{") (expression_statement "DAT_00088a34 = (byte *)FUN_00028fd0(&DAT_00088f58);" (assignment_expression "DAT_00088a34 = (byte *)FUN_00028fd0(&DAT_00088f58)" (identifier "DAT_00088a34") (= "=") (cast_expression "(byte *)FUN_00028fd0(&DAT_00088f58)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00028fd0(&DAT_00088f58)" (identifier "FUN_00028fd0") (argument_list "(&DAT_00088f58)" (( "(") (pointer_expression "&DAT_00088f58" (& "&") (identifier "DAT_00088f58")) () ")"))))) (; ";")) (if_statement "if (DAT_00088a34 == (byte *)0x0) {\nLAB_00037649:\n      FUN_0003e1c0(PTR_DAT_0007ff6c);\n      FUN_00028fa0();\n      if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }\n      return;\n    }" (if "if") (parenthesized_expression "(DAT_00088a34 == (byte *)0x0)" (( "(") (binary_expression "DAT_00088a34 == (byte *)0x0" (identifier "DAT_00088a34") (== "==") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_00037649:\n      FUN_0003e1c0(PTR_DAT_0007ff6c);\n      FUN_00028fa0();\n      if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }\n      return;\n    }" ({ "{") (labeled_statement "LAB_00037649:\n      FUN_0003e1c0(PTR_DAT_0007ff6c);" (statement_identifier "LAB_00037649") (: ":") (expression_statement "FUN_0003e1c0(PTR_DAT_0007ff6c);" (call_expression "FUN_0003e1c0(PTR_DAT_0007ff6c)" (identifier "FUN_0003e1c0") (argument_list "(PTR_DAT_0007ff6c)" (( "(") (identifier "PTR_DAT_0007ff6c") () ")"))) (; ";"))) (expression_statement "FUN_00028fa0();" (call_expression "FUN_00028fa0()" (identifier "FUN_00028fa0") (argument_list "()" (( "(") () ")"))) (; ";")) (if_statement "if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }" (if "if") (parenthesized_expression "((DAT_00088d64 != 0) && (DAT_00088e0c != 0))" (( "(") (binary_expression "(DAT_00088d64 != 0) && (DAT_00088e0c != 0)" (parenthesized_expression "(DAT_00088d64 != 0)" (( "(") (binary_expression "DAT_00088d64 != 0" (identifier "DAT_00088d64") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(DAT_00088e0c != 0)" (( "(") (binary_expression "DAT_00088e0c != 0" (identifier "DAT_00088e0c") (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");\n        return;\n      }" ({ "{") (expression_statement "FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");" (call_expression "FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here")" (identifier "FUN_0002ec20") (argument_list "(DAT_00088d6c,DAT_00088e0c,"first comment found here")" (( "(") (identifier "DAT_00088d6c") (, ",") (identifier "DAT_00088e0c") (, ",") (string_literal ""first comment found here"" (" """) (string_content "first comment found here") (" """)) () ")"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}"))) (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "DAT_00088a0c = (byte *)0x0;" (assignment_expression "DAT_00088a0c = (byte *)0x0" (identifier "DAT_00088a0c") (= "=") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pbVar6 = DAT_00088f58;" (assignment_expression "pbVar6 = DAT_00088f58" (identifier "pbVar6") (= "=") (identifier "DAT_00088f58")) (; ";")) (labeled_statement "LAB_00037040:\n    DAT_00088f58 = pbVar6;" (statement_identifier "LAB_00037040") (: ":") (expression_statement "DAT_00088f58 = pbVar6;" (assignment_expression "DAT_00088f58 = pbVar6" (identifier "DAT_00088f58") (= "=") (identifier "pbVar6")) (; ";"))) (} "}")) (while "while") (parenthesized_expression "(DAT_00088a34 <= DAT_00088f58)" (( "(") (binary_expression "DAT_00088a34 <= DAT_00088f58" (identifier "DAT_00088a34") (<= "<=") (identifier "DAT_00088f58")) () ")")) (; ";"))) (labeled_statement "LAB_00037044:\n  cVar5 = (&DAT_000802c0)[DAT_00088f58[-1]];" (statement_identifier "LAB_00037044") (: ":") (expression_statement "cVar5 = (&DAT_000802c0)[DAT_00088f58[-1]];" (assignment_expression "cVar5 = (&DAT_000802c0)[DAT_00088f58[-1]]" (identifier "cVar5") (= "=") (subscript_expression "(&DAT_000802c0)[DAT_00088f58[-1]]" (parenthesized_expression "(&DAT_000802c0)" (( "(") (pointer_expression "&DAT_000802c0" (& "&") (identifier "DAT_000802c0")) () ")")) ([ "[") (subscript_expression "DAT_00088f58[-1]" (identifier "DAT_00088f58") ([ "[") (number_literal "-1") (] "]")) (] "]"))) (; ";"))) (if_statement "if (cVar5 == '\0') {\n    if (_DAT_00088e00 != 0) {\nLAB_00037065:\n      if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {\n        FUN_0002a220(0);\n      }\n      else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }\n      if (cVar5 != '\0') goto LAB_00037094;\n    }\n  }\n  else {\n    FUN_0003e1c0(PTR_DAT_0007ff6c);\n    if (DAT_00088f58[-1] == 10) {\n      FUN_00029290();\n    }\n    if (_DAT_00088e00 != 0) goto LAB_00037065;\nLAB_00037094:\n    DAT_00088f48 = 0;\n  }" (if "if") (parenthesized_expression "(cVar5 == '\0')" (( "(") (binary_expression "cVar5 == '\0'" (identifier "cVar5") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    if (_DAT_00088e00 != 0) {\nLAB_00037065:\n      if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {\n        FUN_0002a220(0);\n      }\n      else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }\n      if (cVar5 != '\0') goto LAB_00037094;\n    }\n  }" ({ "{") (if_statement "if (_DAT_00088e00 != 0) {\nLAB_00037065:\n      if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {\n        FUN_0002a220(0);\n      }\n      else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }\n      if (cVar5 != '\0') goto LAB_00037094;\n    }" (if "if") (parenthesized_expression "(_DAT_00088e00 != 0)" (( "(") (binary_expression "_DAT_00088e00 != 0" (identifier "_DAT_00088e00") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00037065:\n      if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {\n        FUN_0002a220(0);\n      }\n      else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }\n      if (cVar5 != '\0') goto LAB_00037094;\n    }" ({ "{") (labeled_statement "LAB_00037065:\n      if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {\n        FUN_0002a220(0);\n      }\n      else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }" (statement_identifier "LAB_00037065") (: ":") (if_statement "if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {\n        FUN_0002a220(0);\n      }\n      else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }" (if "if") (parenthesized_expression "(((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1))" (( "(") (binary_expression "((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)" (parenthesized_expression "((_DAT_00088e00 & 0x40) == 0)" (( "(") (binary_expression "(_DAT_00088e00 & 0x40) == 0" (parenthesized_expression "(_DAT_00088e00 & 0x40)" (( "(") (binary_expression "_DAT_00088e00 & 0x40" (identifier "_DAT_00088e00") (& "&") (number_literal "0x40")) () ")")) (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "((int)DAT_00088f14 < 1)" (( "(") (binary_expression "(int)DAT_00088f14 < 1" (cast_expression "(int)DAT_00088f14" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "DAT_00088f14")) (< "<") (number_literal "1")) () ")"))) () ")")) (compound_statement "{\n        FUN_0002a220(0);\n      }" ({ "{") (expression_statement "FUN_0002a220(0);" (call_expression "FUN_0002a220(0)" (identifier "FUN_0002a220") (argument_list "(0)" (( "(") (number_literal "0") () ")"))) (; ";")) (} "}")) (else_clause "else {\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }" (else "else") (compound_statement "{\n        local_2c = (byte *)FUN_0002f7d0(0);\n        if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }\n      }" ({ "{") (expression_statement "local_2c = (byte *)FUN_0002f7d0(0);" (assignment_expression "local_2c = (byte *)FUN_0002f7d0(0)" (identifier "local_2c") (= "=") (cast_expression "(byte *)FUN_0002f7d0(0)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0002f7d0(0)" (identifier "FUN_0002f7d0") (argument_list "(0)" (( "(") (number_literal "0") () ")"))))) (; ";")) (if_statement "if (DAT_00088a0c != local_2c) {\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }" (if "if") (parenthesized_expression "(DAT_00088a0c != local_2c)" (( "(") (binary_expression "DAT_00088a0c != local_2c" (identifier "DAT_00088a0c") (!= "!=") (identifier "local_2c")) () ")")) (compound_statement "{\n          sVar8 = (int)local_2c - (int)DAT_00088f58;\n          DAT_00088a0c = local_2c;\n          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);\n          sVar11 = DAT_00088f14;\n          memset(__s,0x3e,DAT_00088f14);\n          *(undefined1 *)((int)__s + sVar11) = 0x20;\n          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);\n          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;\n          FUN_0002a220(__s);\n        }" ({ "{") (expression_statement "sVar8 = (int)local_2c - (int)DAT_00088f58;" (assignment_expression "sVar8 = (int)local_2c - (int)DAT_00088f58" (identifier "sVar8") (= "=") (binary_expression "(int)local_2c - (int)DAT_00088f58" (cast_expression "(int)local_2c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_2c")) (- "-") (cast_expression "(int)DAT_00088f58" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "DAT_00088f58")))) (; ";")) (expression_statement "DAT_00088a0c = local_2c;" (assignment_expression "DAT_00088a0c = local_2c" (identifier "DAT_00088a0c") (= "=") (identifier "local_2c")) (; ";")) (expression_statement "__s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);" (assignment_expression "__s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2)" (identifier "__s") (= "=") (cast_expression "(void *)xmalloc(sVar8 + DAT_00088f14 + 2)" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "xmalloc(sVar8 + DAT_00088f14 + 2)" (identifier "xmalloc") (argument_list "(sVar8 + DAT_00088f14 + 2)" (( "(") (binary_expression "sVar8 + DAT_00088f14 + 2" (binary_expression "sVar8 + DAT_00088f14" (identifier "sVar8") (+ "+") (identifier "DAT_00088f14")) (+ "+") (number_literal "2")) () ")"))))) (; ";")) (expression_statement "sVar11 = DAT_00088f14;" (assignment_expression "sVar11 = DAT_00088f14" (identifier "sVar11") (= "=") (identifier "DAT_00088f14")) (; ";")) (expression_statement "memset(__s,0x3e,DAT_00088f14);" (call_expression "memset(__s,0x3e,DAT_00088f14)" (identifier "memset") (argument_list "(__s,0x3e,DAT_00088f14)" (( "(") (identifier "__s") (, ",") (number_literal "0x3e") (, ",") (identifier "DAT_00088f14") () ")"))) (; ";")) (expression_statement "*(undefined1 *)((int)__s + sVar11) = 0x20;" (assignment_expression "*(undefined1 *)((int)__s + sVar11) = 0x20" (pointer_expression "*(undefined1 *)((int)__s + sVar11)" (* "*") (cast_expression "(undefined1 *)((int)__s + sVar11)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)__s + sVar11)" (( "(") (binary_expression "(int)__s + sVar11" (cast_expression "(int)__s" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "__s")) (+ "+") (identifier "sVar11")) () ")")))) (= "=") (number_literal "0x20")) (; ";")) (expression_statement "memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);" (call_expression "memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8)" (identifier "memcpy") (argument_list "((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8)" (( "(") (cast_expression "(void *)((int)__s + DAT_00088f14 + 1)" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)__s + DAT_00088f14 + 1)" (( "(") (binary_expression "(int)__s + DAT_00088f14 + 1" (binary_expression "(int)__s + DAT_00088f14" (cast_expression "(int)__s" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "__s")) (+ "+") (identifier "DAT_00088f14")) (+ "+") (number_literal "1")) () ")"))) (, ",") (identifier "DAT_00088f58") (, ",") (identifier "sVar8") () ")"))) (; ";")) (expression_statement "*(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;" (assignment_expression "*(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0" (pointer_expression "*(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1)" (* "*") (cast_expression "(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)__s + DAT_00088f14 + sVar8 + 1)" (( "(") (binary_expression "(int)__s + DAT_00088f14 + sVar8 + 1" (binary_expression "(int)__s + DAT_00088f14 + sVar8" (binary_expression "(int)__s + DAT_00088f14" (cast_expression "(int)__s" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "__s")) (+ "+") (identifier "DAT_00088f14")) (+ "+") (identifier "sVar8")) (+ "+") (number_literal "1")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "FUN_0002a220(__s);" (call_expression "FUN_0002a220(__s)" (identifier "FUN_0002a220") (argument_list "(__s)" (( "(") (identifier "__s") () ")"))) (; ";")) (} "}"))) (} "}"))))) (if_statement "if (cVar5 != '\0') goto LAB_00037094;" (if "if") (parenthesized_expression "(cVar5 != '\0')" (( "(") (binary_expression "cVar5 != '\0'" (identifier "cVar5") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00037094;" (goto "goto") (statement_identifier "LAB_00037094") (; ";"))) (} "}"))) (} "}")) (else_clause "else {\n    FUN_0003e1c0(PTR_DAT_0007ff6c);\n    if (DAT_00088f58[-1] == 10) {\n      FUN_00029290();\n    }\n    if (_DAT_00088e00 != 0) goto LAB_00037065;\nLAB_00037094:\n    DAT_00088f48 = 0;\n  }" (else "else") (compound_statement "{\n    FUN_0003e1c0(PTR_DAT_0007ff6c);\n    if (DAT_00088f58[-1] == 10) {\n      FUN_00029290();\n    }\n    if (_DAT_00088e00 != 0) goto LAB_00037065;\nLAB_00037094:\n    DAT_00088f48 = 0;\n  }" ({ "{") (expression_statement "FUN_0003e1c0(PTR_DAT_0007ff6c);" (call_expression "FUN_0003e1c0(PTR_DAT_0007ff6c)" (identifier "FUN_0003e1c0") (argument_list "(PTR_DAT_0007ff6c)" (( "(") (identifier "PTR_DAT_0007ff6c") () ")"))) (; ";")) (if_statement "if (DAT_00088f58[-1] == 10) {\n      FUN_00029290();\n    }" (if "if") (parenthesized_expression "(DAT_00088f58[-1] == 10)" (( "(") (binary_expression "DAT_00088f58[-1] == 10" (subscript_expression "DAT_00088f58[-1]" (identifier "DAT_00088f58") ([ "[") (number_literal "-1") (] "]")) (== "==") (number_literal "10")) () ")")) (compound_statement "{\n      FUN_00029290();\n    }" ({ "{") (expression_statement "FUN_00029290();" (call_expression "FUN_00029290()" (identifier "FUN_00029290") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (_DAT_00088e00 != 0) goto LAB_00037065;" (if "if") (parenthesized_expression "(_DAT_00088e00 != 0)" (( "(") (binary_expression "_DAT_00088e00 != 0" (identifier "_DAT_00088e00") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00037065;" (goto "goto") (statement_identifier "LAB_00037065") (; ";"))) (labeled_statement "LAB_00037094:\n    DAT_00088f48 = 0;" (statement_identifier "LAB_00037094") (: ":") (expression_statement "DAT_00088f48 = 0;" (assignment_expression "DAT_00088f48 = 0" (identifier "DAT_00088f48") (= "=") (number_literal "0")) (; ";"))) (} "}")))) (do_statement "do {\n    puVar3 = PTR__sch_istable_0007ff84;\n    pbVar6 = DAT_00088f58 + 1;\n    bVar14 = *DAT_00088f58;\n    uVar15 = (uint)bVar14;\n    DAT_00088f58 = pbVar6;\n    if (0x17 < (byte)(uVar15 - 9)) {\n      bVar4 = (&DAT_000803c0)[uVar15];\n      goto joined_r0x000370d3;\n    }\n  } while ((0x800009U >> (uVar15 - 9 & 0x1f) & 1) != 0);" (do "do") (compound_statement "{\n    puVar3 = PTR__sch_istable_0007ff84;\n    pbVar6 = DAT_00088f58 + 1;\n    bVar14 = *DAT_00088f58;\n    uVar15 = (uint)bVar14;\n    DAT_00088f58 = pbVar6;\n    if (0x17 < (byte)(uVar15 - 9)) {\n      bVar4 = (&DAT_000803c0)[uVar15];\n      goto joined_r0x000370d3;\n    }\n  }" ({ "{") (expression_statement "puVar3 = PTR__sch_istable_0007ff84;" (assignment_expression "puVar3 = PTR__sch_istable_0007ff84" (identifier "puVar3") (= "=") (identifier "PTR__sch_istable_0007ff84")) (; ";")) (expression_statement "pbVar6 = DAT_00088f58 + 1;" (assignment_expression "pbVar6 = DAT_00088f58 + 1" (identifier "pbVar6") (= "=") (binary_expression "DAT_00088f58 + 1" (identifier "DAT_00088f58") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "bVar14 = *DAT_00088f58;" (assignment_expression "bVar14 = *DAT_00088f58" (identifier "bVar14") (= "=") (pointer_expression "*DAT_00088f58" (* "*") (identifier "DAT_00088f58"))) (; ";")) (expression_statement "uVar15 = (uint)bVar14;" (assignment_expression "uVar15 = (uint)bVar14" (identifier "uVar15") (= "=") (cast_expression "(uint)bVar14" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar14"))) (; ";")) (expression_statement "DAT_00088f58 = pbVar6;" (assignment_expression "DAT_00088f58 = pbVar6" (identifier "DAT_00088f58") (= "=") (identifier "pbVar6")) (; ";")) (if_statement "if (0x17 < (byte)(uVar15 - 9)) {\n      bVar4 = (&DAT_000803c0)[uVar15];\n      goto joined_r0x000370d3;\n    }" (if "if") (parenthesized_expression "(0x17 < (byte)(uVar15 - 9))" (( "(") (binary_expression "0x17 < (byte)(uVar15 - 9)" (number_literal "0x17") (< "<") (call_expression "(byte)(uVar15 - 9)" (parenthesized_expression "(byte)" (( "(") (identifier "byte") () ")")) (argument_list "(uVar15 - 9)" (( "(") (binary_expression "uVar15 - 9" (identifier "uVar15") (- "-") (number_literal "9")) () ")")))) () ")")) (compound_statement "{\n      bVar4 = (&DAT_000803c0)[uVar15];\n      goto joined_r0x000370d3;\n    }" ({ "{") (expression_statement "bVar4 = (&DAT_000803c0)[uVar15];" (assignment_expression "bVar4 = (&DAT_000803c0)[uVar15]" (identifier "bVar4") (= "=") (subscript_expression "(&DAT_000803c0)[uVar15]" (parenthesized_expression "(&DAT_000803c0)" (( "(") (pointer_expression "&DAT_000803c0" (& "&") (identifier "DAT_000803c0")) () ")")) ([ "[") (identifier "uVar15") (] "]"))) (; ";")) (goto_statement "goto joined_r0x000370d3;" (goto "goto") (statement_identifier "joined_r0x000370d3") (; ";")) (} "}"))) (} "}")) (while "while") (parenthesized_expression "((0x800009U >> (uVar15 - 9 & 0x1f) & 1) != 0)" (( "(") (binary_expression "(0x800009U >> (uVar15 - 9 & 0x1f) & 1) != 0" (parenthesized_expression "(0x800009U >> (uVar15 - 9 & 0x1f) & 1)" (( "(") (binary_expression "0x800009U >> (uVar15 - 9 & 0x1f) & 1" (binary_expression "0x800009U >> (uVar15 - 9 & 0x1f)" (number_literal "0x800009U") (>> ">>") (parenthesized_expression "(uVar15 - 9 & 0x1f)" (( "(") (binary_expression "uVar15 - 9 & 0x1f" (binary_expression "uVar15 - 9" (identifier "uVar15") (- "-") (number_literal "9")) (& "&") (number_literal "0x1f")) () ")"))) (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")")) (; ";")) (expression_statement "bVar4 = (&DAT_000803c0)[uVar15];" (assignment_expression "bVar4 = (&DAT_000803c0)[uVar15]" (identifier "bVar4") (= "=") (subscript_expression "(&DAT_000803c0)[uVar15]" (parenthesized_expression "(&DAT_000803c0)" (( "(") (pointer_expression "&DAT_000803c0" (& "&") (identifier "DAT_000803c0")) () ")")) ([ "[") (identifier "uVar15") (] "]"))) (; ";")) (labeled_statement "joined_r0x000370d3:\n  if (((bVar4 & 2) == 0) && (bVar14 != 0x22)) {\n    if ((&DAT_000802c0)[uVar15] != '\0') goto LAB_00037040;\n    if ((PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0) {\n      iVar13 = FUN_0001c860();\n      if (iVar13 != 0) goto LAB_00037509;\n      iVar13 = (char)bVar14 + -0x30;\n      bVar4 = *DAT_00088f58;\n      bVar1 = puVar3[(uint)bVar4 * 2];\n      pbVar9 = DAT_00088f58;\n      while ((bVar1 & 4) != 0) {\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }\n      DAT_00088f58 = pbVar9 + 1;\n      if (*pbVar9 == 0x3a) {\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }\n    }\n    DAT_00088f58 = pbVar6;\n    if (bVar14 == 0) goto LAB_00037439;\n    pcVar7 = strchr(PTR_DAT_0007ffa0,(int)(char)bVar14);\n    bVar17 = false;\n    bVar18 = pcVar7 == (char *)0x0;\n    if (bVar18) goto LAB_00037439;\n    local_2c = DAT_00088f58;\n    iVar13 = 4;\n    pbVar6 = DAT_00088f58;\n    pbVar9 = &DAT_0005e3fa;\n    do {\n      if (iVar13 == 0) break;\n      iVar13 = iVar13 + -1;\n      bVar17 = *pbVar6 < *pbVar9;\n      bVar18 = *pbVar6 == *pbVar9;\n      pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;\n      pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;\n    } while (bVar18);\n    if ((!bVar17 && !bVar18) == bVar17) {\n      FUN_00029290();\n      pbVar6 = local_2c + 4;\n      local_2c = pbVar6;\n      pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");\n      if (pbVar9 == (byte *)0x0) {\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }\n      else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }\n      iVar13 = (int)pbVar9 - (int)DAT_00088a1c;\n      DAT_00088a18 = pbVar9;\n      pcVar7 = (char *)xmalloc(iVar13);\n      __s_00 = pcVar7;\n      while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }\n      pcVar7[(int)pcVar10] = '\0';\n      if (local_34 != (byte *)0x0) {\n        free(local_34);\n      }\n      sVar11 = strlen(__s_00);\n      FUN_00038130(local_28,sVar11);\n      FUN_00038310(local_28,__s_00,sVar11);\n      FUN_00028ea0(local_28,DAT_00088f58,0);\n      FUN_000381b0(local_28);\n      pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);\n      DAT_00088a34 = pbVar6;\n      free(__s_00);\n    }\n    else {\n      FUN_00030fc0();\n      pbVar6 = DAT_00088a34;\n    }\n    if (pbVar6 <= DAT_00088f58) goto LAB_00036ffa;\n    goto LAB_00037044;\n  }" (statement_identifier "joined_r0x000370d3") (: ":") (if_statement "if (((bVar4 & 2) == 0) && (bVar14 != 0x22)) {\n    if ((&DAT_000802c0)[uVar15] != '\0') goto LAB_00037040;\n    if ((PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0) {\n      iVar13 = FUN_0001c860();\n      if (iVar13 != 0) goto LAB_00037509;\n      iVar13 = (char)bVar14 + -0x30;\n      bVar4 = *DAT_00088f58;\n      bVar1 = puVar3[(uint)bVar4 * 2];\n      pbVar9 = DAT_00088f58;\n      while ((bVar1 & 4) != 0) {\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }\n      DAT_00088f58 = pbVar9 + 1;\n      if (*pbVar9 == 0x3a) {\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }\n    }\n    DAT_00088f58 = pbVar6;\n    if (bVar14 == 0) goto LAB_00037439;\n    pcVar7 = strchr(PTR_DAT_0007ffa0,(int)(char)bVar14);\n    bVar17 = false;\n    bVar18 = pcVar7 == (char *)0x0;\n    if (bVar18) goto LAB_00037439;\n    local_2c = DAT_00088f58;\n    iVar13 = 4;\n    pbVar6 = DAT_00088f58;\n    pbVar9 = &DAT_0005e3fa;\n    do {\n      if (iVar13 == 0) break;\n      iVar13 = iVar13 + -1;\n      bVar17 = *pbVar6 < *pbVar9;\n      bVar18 = *pbVar6 == *pbVar9;\n      pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;\n      pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;\n    } while (bVar18);\n    if ((!bVar17 && !bVar18) == bVar17) {\n      FUN_00029290();\n      pbVar6 = local_2c + 4;\n      local_2c = pbVar6;\n      pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");\n      if (pbVar9 == (byte *)0x0) {\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }\n      else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }\n      iVar13 = (int)pbVar9 - (int)DAT_00088a1c;\n      DAT_00088a18 = pbVar9;\n      pcVar7 = (char *)xmalloc(iVar13);\n      __s_00 = pcVar7;\n      while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }\n      pcVar7[(int)pcVar10] = '\0';\n      if (local_34 != (byte *)0x0) {\n        free(local_34);\n      }\n      sVar11 = strlen(__s_00);\n      FUN_00038130(local_28,sVar11);\n      FUN_00038310(local_28,__s_00,sVar11);\n      FUN_00028ea0(local_28,DAT_00088f58,0);\n      FUN_000381b0(local_28);\n      pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);\n      DAT_00088a34 = pbVar6;\n      free(__s_00);\n    }\n    else {\n      FUN_00030fc0();\n      pbVar6 = DAT_00088a34;\n    }\n    if (pbVar6 <= DAT_00088f58) goto LAB_00036ffa;\n    goto LAB_00037044;\n  }" (if "if") (parenthesized_expression "(((bVar4 & 2) == 0) && (bVar14 != 0x22))" (( "(") (binary_expression "((bVar4 & 2) == 0) && (bVar14 != 0x22)" (parenthesized_expression "((bVar4 & 2) == 0)" (( "(") (binary_expression "(bVar4 & 2) == 0" (parenthesized_expression "(bVar4 & 2)" (( "(") (binary_expression "bVar4 & 2" (identifier "bVar4") (& "&") (number_literal "2")) () ")")) (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(bVar14 != 0x22)" (( "(") (binary_expression "bVar14 != 0x22" (identifier "bVar14") (!= "!=") (number_literal "0x22")) () ")"))) () ")")) (compound_statement "{\n    if ((&DAT_000802c0)[uVar15] != '\0') goto LAB_00037040;\n    if ((PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0) {\n      iVar13 = FUN_0001c860();\n      if (iVar13 != 0) goto LAB_00037509;\n      iVar13 = (char)bVar14 + -0x30;\n      bVar4 = *DAT_00088f58;\n      bVar1 = puVar3[(uint)bVar4 * 2];\n      pbVar9 = DAT_00088f58;\n      while ((bVar1 & 4) != 0) {\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }\n      DAT_00088f58 = pbVar9 + 1;\n      if (*pbVar9 == 0x3a) {\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }\n    }\n    DAT_00088f58 = pbVar6;\n    if (bVar14 == 0) goto LAB_00037439;\n    pcVar7 = strchr(PTR_DAT_0007ffa0,(int)(char)bVar14);\n    bVar17 = false;\n    bVar18 = pcVar7 == (char *)0x0;\n    if (bVar18) goto LAB_00037439;\n    local_2c = DAT_00088f58;\n    iVar13 = 4;\n    pbVar6 = DAT_00088f58;\n    pbVar9 = &DAT_0005e3fa;\n    do {\n      if (iVar13 == 0) break;\n      iVar13 = iVar13 + -1;\n      bVar17 = *pbVar6 < *pbVar9;\n      bVar18 = *pbVar6 == *pbVar9;\n      pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;\n      pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;\n    } while (bVar18);\n    if ((!bVar17 && !bVar18) == bVar17) {\n      FUN_00029290();\n      pbVar6 = local_2c + 4;\n      local_2c = pbVar6;\n      pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");\n      if (pbVar9 == (byte *)0x0) {\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }\n      else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }\n      iVar13 = (int)pbVar9 - (int)DAT_00088a1c;\n      DAT_00088a18 = pbVar9;\n      pcVar7 = (char *)xmalloc(iVar13);\n      __s_00 = pcVar7;\n      while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }\n      pcVar7[(int)pcVar10] = '\0';\n      if (local_34 != (byte *)0x0) {\n        free(local_34);\n      }\n      sVar11 = strlen(__s_00);\n      FUN_00038130(local_28,sVar11);\n      FUN_00038310(local_28,__s_00,sVar11);\n      FUN_00028ea0(local_28,DAT_00088f58,0);\n      FUN_000381b0(local_28);\n      pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);\n      DAT_00088a34 = pbVar6;\n      free(__s_00);\n    }\n    else {\n      FUN_00030fc0();\n      pbVar6 = DAT_00088a34;\n    }\n    if (pbVar6 <= DAT_00088f58) goto LAB_00036ffa;\n    goto LAB_00037044;\n  }" ({ "{") (if_statement "if ((&DAT_000802c0)[uVar15] != '\0') goto LAB_00037040;" (if "if") (parenthesized_expression "((&DAT_000802c0)[uVar15] != '\0')" (( "(") (binary_expression "(&DAT_000802c0)[uVar15] != '\0'" (subscript_expression "(&DAT_000802c0)[uVar15]" (parenthesized_expression "(&DAT_000802c0)" (( "(") (pointer_expression "&DAT_000802c0" (& "&") (identifier "DAT_000802c0")) () ")")) ([ "[") (identifier "uVar15") (] "]")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00037040;" (goto "goto") (statement_identifier "LAB_00037040") (; ";"))) (if_statement "if ((PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0) {\n      iVar13 = FUN_0001c860();\n      if (iVar13 != 0) goto LAB_00037509;\n      iVar13 = (char)bVar14 + -0x30;\n      bVar4 = *DAT_00088f58;\n      bVar1 = puVar3[(uint)bVar4 * 2];\n      pbVar9 = DAT_00088f58;\n      while ((bVar1 & 4) != 0) {\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }\n      DAT_00088f58 = pbVar9 + 1;\n      if (*pbVar9 == 0x3a) {\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }\n    }" (if "if") (parenthesized_expression "((PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0)" (( "(") (binary_expression "(PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0" (parenthesized_expression "(PTR__sch_istable_0007ff84[uVar15 * 2] & 4)" (( "(") (binary_expression "PTR__sch_istable_0007ff84[uVar15 * 2] & 4" (subscript_expression "PTR__sch_istable_0007ff84[uVar15 * 2]" (identifier "PTR__sch_istable_0007ff84") ([ "[") (binary_expression "uVar15 * 2" (identifier "uVar15") (* "*") (number_literal "2")) (] "]")) (& "&") (number_literal "4")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      iVar13 = FUN_0001c860();\n      if (iVar13 != 0) goto LAB_00037509;\n      iVar13 = (char)bVar14 + -0x30;\n      bVar4 = *DAT_00088f58;\n      bVar1 = puVar3[(uint)bVar4 * 2];\n      pbVar9 = DAT_00088f58;\n      while ((bVar1 & 4) != 0) {\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }\n      DAT_00088f58 = pbVar9 + 1;\n      if (*pbVar9 == 0x3a) {\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }\n    }" ({ "{") (expression_statement "iVar13 = FUN_0001c860();" (assignment_expression "iVar13 = FUN_0001c860()" (identifier "iVar13") (= "=") (call_expression "FUN_0001c860()" (identifier "FUN_0001c860") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar13 != 0) goto LAB_00037509;" (if "if") (parenthesized_expression "(iVar13 != 0)" (( "(") (binary_expression "iVar13 != 0" (identifier "iVar13") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00037509;" (goto "goto") (statement_identifier "LAB_00037509") (; ";"))) (expression_statement "iVar13 = (char)bVar14 + -0x30;" (assignment_expression "iVar13 = (char)bVar14 + -0x30" (identifier "iVar13") (= "=") (binary_expression "(char)bVar14 + -0x30" (cast_expression "(char)bVar14" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "bVar14")) (+ "+") (number_literal "-0x30"))) (; ";")) (expression_statement "bVar4 = *DAT_00088f58;" (assignment_expression "bVar4 = *DAT_00088f58" (identifier "bVar4") (= "=") (pointer_expression "*DAT_00088f58" (* "*") (identifier "DAT_00088f58"))) (; ";")) (expression_statement "bVar1 = puVar3[(uint)bVar4 * 2];" (assignment_expression "bVar1 = puVar3[(uint)bVar4 * 2]" (identifier "bVar1") (= "=") (subscript_expression "puVar3[(uint)bVar4 * 2]" (identifier "puVar3") ([ "[") (binary_expression "(uint)bVar4 * 2" (cast_expression "(uint)bVar4" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar4")) (* "*") (number_literal "2")) (] "]"))) (; ";")) (expression_statement "pbVar9 = DAT_00088f58;" (assignment_expression "pbVar9 = DAT_00088f58" (identifier "pbVar9") (= "=") (identifier "DAT_00088f58")) (; ";")) (while_statement "while ((bVar1 & 4) != 0) {\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }" (while "while") (parenthesized_expression "((bVar1 & 4) != 0)" (( "(") (binary_expression "(bVar1 & 4) != 0" (parenthesized_expression "(bVar1 & 4)" (( "(") (binary_expression "bVar1 & 4" (identifier "bVar1") (& "&") (number_literal "4")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        pbVar9 = pbVar9 + 1;\n        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;\n        bVar4 = *pbVar9;\n        bVar1 = puVar3[(uint)bVar4 * 2];\n      }" ({ "{") (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + 1" (identifier "pbVar9") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;" (assignment_expression "iVar13 = (char)bVar4 + -0x30 + iVar13 * 10" (identifier "iVar13") (= "=") (binary_expression "(char)bVar4 + -0x30 + iVar13 * 10" (binary_expression "(char)bVar4 + -0x30" (cast_expression "(char)bVar4" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "bVar4")) (+ "+") (number_literal "-0x30")) (+ "+") (binary_expression "iVar13 * 10" (identifier "iVar13") (* "*") (number_literal "10")))) (; ";")) (expression_statement "bVar4 = *pbVar9;" (assignment_expression "bVar4 = *pbVar9" (identifier "bVar4") (= "=") (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9"))) (; ";")) (expression_statement "bVar1 = puVar3[(uint)bVar4 * 2];" (assignment_expression "bVar1 = puVar3[(uint)bVar4 * 2]" (identifier "bVar1") (= "=") (subscript_expression "puVar3[(uint)bVar4 * 2]" (identifier "puVar3") ([ "[") (binary_expression "(uint)bVar4 * 2" (cast_expression "(uint)bVar4" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar4")) (* "*") (number_literal "2")) (] "]"))) (; ";")) (} "}"))) (expression_statement "DAT_00088f58 = pbVar9 + 1;" (assignment_expression "DAT_00088f58 = pbVar9 + 1" (identifier "DAT_00088f58") (= "=") (binary_expression "pbVar9 + 1" (identifier "pbVar9") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (*pbVar9 == 0x3a) {\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }" (if "if") (parenthesized_expression "(*pbVar9 == 0x3a)" (( "(") (binary_expression "*pbVar9 == 0x3a" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (number_literal "0x3a")) () ")")) (compound_statement "{\n        FUN_0003a8d0(iVar13);\n        uVar12 = FUN_0003aa40(iVar13,0);\n        FUN_0003d480(uVar12);\n        pbVar6 = DAT_00088f58;\n        goto LAB_00037040;\n      }" ({ "{") (expression_statement "FUN_0003a8d0(iVar13);" (call_expression "FUN_0003a8d0(iVar13)" (identifier "FUN_0003a8d0") (argument_list "(iVar13)" (( "(") (identifier "iVar13") () ")"))) (; ";")) (expression_statement "uVar12 = FUN_0003aa40(iVar13,0);" (assignment_expression "uVar12 = FUN_0003aa40(iVar13,0)" (identifier "uVar12") (= "=") (call_expression "FUN_0003aa40(iVar13,0)" (identifier "FUN_0003aa40") (argument_list "(iVar13,0)" (( "(") (identifier "iVar13") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "FUN_0003d480(uVar12);" (call_expression "FUN_0003d480(uVar12)" (identifier "FUN_0003d480") (argument_list "(uVar12)" (( "(") (identifier "uVar12") () ")"))) (; ";")) (expression_statement "pbVar6 = DAT_00088f58;" (assignment_expression "pbVar6 = DAT_00088f58" (identifier "pbVar6") (= "=") (identifier "DAT_00088f58")) (; ";")) (goto_statement "goto LAB_00037040;" (goto "goto") (statement_identifier "LAB_00037040") (; ";")) (} "}"))) (} "}"))) (expression_statement "DAT_00088f58 = pbVar6;" (assignment_expression "DAT_00088f58 = pbVar6" (identifier "DAT_00088f58") (= "=") (identifier "pbVar6")) (; ";")) (if_statement "if (bVar14 == 0) goto LAB_00037439;" (if "if") (parenthesized_expression "(bVar14 == 0)" (( "(") (binary_expression "bVar14 == 0" (identifier "bVar14") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00037439;" (goto "goto") (statement_identifier "LAB_00037439") (; ";"))) (expression_statement "pcVar7 = strchr(PTR_DAT_0007ffa0,(int)(char)bVar14);" (assignment_expression "pcVar7 = strchr(PTR_DAT_0007ffa0,(int)(char)bVar14)" (identifier "pcVar7") (= "=") (call_expression "strchr(PTR_DAT_0007ffa0,(int)(char)bVar14)" (identifier "strchr") (argument_list "(PTR_DAT_0007ffa0,(int)(char)bVar14)" (( "(") (identifier "PTR_DAT_0007ffa0") (, ",") (cast_expression "(int)(char)bVar14" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (cast_expression "(char)bVar14" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "bVar14"))) () ")")))) (; ";")) (expression_statement "bVar17 = false;" (assignment_expression "bVar17 = false" (identifier "bVar17") (= "=") (false "false")) (; ";")) (expression_statement "bVar18 = pcVar7 == (char *)0x0;" (assignment_expression "bVar18 = pcVar7 == (char *)0x0" (identifier "bVar18") (= "=") (binary_expression "pcVar7 == (char *)0x0" (identifier "pcVar7") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")))) (; ";")) (if_statement "if (bVar18) goto LAB_00037439;" (if "if") (parenthesized_expression "(bVar18)" (( "(") (identifier "bVar18") () ")")) (goto_statement "goto LAB_00037439;" (goto "goto") (statement_identifier "LAB_00037439") (; ";"))) (expression_statement "local_2c = DAT_00088f58;" (assignment_expression "local_2c = DAT_00088f58" (identifier "local_2c") (= "=") (identifier "DAT_00088f58")) (; ";")) (expression_statement "iVar13 = 4;" (assignment_expression "iVar13 = 4" (identifier "iVar13") (= "=") (number_literal "4")) (; ";")) (expression_statement "pbVar6 = DAT_00088f58;" (assignment_expression "pbVar6 = DAT_00088f58" (identifier "pbVar6") (= "=") (identifier "DAT_00088f58")) (; ";")) (expression_statement "pbVar9 = &DAT_0005e3fa;" (assignment_expression "pbVar9 = &DAT_0005e3fa" (identifier "pbVar9") (= "=") (pointer_expression "&DAT_0005e3fa" (& "&") (identifier "DAT_0005e3fa"))) (; ";")) (do_statement "do {\n      if (iVar13 == 0) break;\n      iVar13 = iVar13 + -1;\n      bVar17 = *pbVar6 < *pbVar9;\n      bVar18 = *pbVar6 == *pbVar9;\n      pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;\n      pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;\n    } while (bVar18);" (do "do") (compound_statement "{\n      if (iVar13 == 0) break;\n      iVar13 = iVar13 + -1;\n      bVar17 = *pbVar6 < *pbVar9;\n      bVar18 = *pbVar6 == *pbVar9;\n      pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;\n      pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;\n    }" ({ "{") (if_statement "if (iVar13 == 0) break;" (if "if") (parenthesized_expression "(iVar13 == 0)" (( "(") (binary_expression "iVar13 == 0" (identifier "iVar13") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar13 = iVar13 + -1;" (assignment_expression "iVar13 = iVar13 + -1" (identifier "iVar13") (= "=") (binary_expression "iVar13 + -1" (identifier "iVar13") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar17 = *pbVar6 < *pbVar9;" (assignment_expression "bVar17 = *pbVar6 < *pbVar9" (identifier "bVar17") (= "=") (binary_expression "*pbVar6 < *pbVar9" (pointer_expression "*pbVar6" (* "*") (identifier "pbVar6")) (< "<") (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")))) (; ";")) (expression_statement "bVar18 = *pbVar6 == *pbVar9;" (assignment_expression "bVar18 = *pbVar6 == *pbVar9" (identifier "bVar18") (= "=") (binary_expression "*pbVar6 == *pbVar9" (pointer_expression "*pbVar6" (* "*") (identifier "pbVar6")) (== "==") (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")))) (; ";")) (expression_statement "pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;" (assignment_expression "pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1" (identifier "pbVar6") (= "=") (binary_expression "pbVar6 + (uint)bVar19 * -2 + 1" (binary_expression "pbVar6 + (uint)bVar19 * -2" (identifier "pbVar6") (+ "+") (binary_expression "(uint)bVar19 * -2" (cast_expression "(uint)bVar19" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar19")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + (uint)bVar19 * -2 + 1" (binary_expression "pbVar9 + (uint)bVar19 * -2" (identifier "pbVar9") (+ "+") (binary_expression "(uint)bVar19 * -2" (cast_expression "(uint)bVar19" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar19")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar18)" (( "(") (identifier "bVar18") () ")")) (; ";")) (if_statement "if ((!bVar17 && !bVar18) == bVar17) {\n      FUN_00029290();\n      pbVar6 = local_2c + 4;\n      local_2c = pbVar6;\n      pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");\n      if (pbVar9 == (byte *)0x0) {\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }\n      else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }\n      iVar13 = (int)pbVar9 - (int)DAT_00088a1c;\n      DAT_00088a18 = pbVar9;\n      pcVar7 = (char *)xmalloc(iVar13);\n      __s_00 = pcVar7;\n      while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }\n      pcVar7[(int)pcVar10] = '\0';\n      if (local_34 != (byte *)0x0) {\n        free(local_34);\n      }\n      sVar11 = strlen(__s_00);\n      FUN_00038130(local_28,sVar11);\n      FUN_00038310(local_28,__s_00,sVar11);\n      FUN_00028ea0(local_28,DAT_00088f58,0);\n      FUN_000381b0(local_28);\n      pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);\n      DAT_00088a34 = pbVar6;\n      free(__s_00);\n    }\n    else {\n      FUN_00030fc0();\n      pbVar6 = DAT_00088a34;\n    }" (if "if") (parenthesized_expression "((!bVar17 && !bVar18) == bVar17)" (( "(") (binary_expression "(!bVar17 && !bVar18) == bVar17" (parenthesized_expression "(!bVar17 && !bVar18)" (( "(") (binary_expression "!bVar17 && !bVar18" (unary_expression "!bVar17" (! "!") (identifier "bVar17")) (&& "&&") (unary_expression "!bVar18" (! "!") (identifier "bVar18"))) () ")")) (== "==") (identifier "bVar17")) () ")")) (compound_statement "{\n      FUN_00029290();\n      pbVar6 = local_2c + 4;\n      local_2c = pbVar6;\n      pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");\n      if (pbVar9 == (byte *)0x0) {\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }\n      else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }\n      iVar13 = (int)pbVar9 - (int)DAT_00088a1c;\n      DAT_00088a18 = pbVar9;\n      pcVar7 = (char *)xmalloc(iVar13);\n      __s_00 = pcVar7;\n      while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }\n      pcVar7[(int)pcVar10] = '\0';\n      if (local_34 != (byte *)0x0) {\n        free(local_34);\n      }\n      sVar11 = strlen(__s_00);\n      FUN_00038130(local_28,sVar11);\n      FUN_00038310(local_28,__s_00,sVar11);\n      FUN_00028ea0(local_28,DAT_00088f58,0);\n      FUN_000381b0(local_28);\n      pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);\n      DAT_00088a34 = pbVar6;\n      free(__s_00);\n    }" ({ "{") (expression_statement "FUN_00029290();" (call_expression "FUN_00029290()" (identifier "FUN_00029290") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pbVar6 = local_2c + 4;" (assignment_expression "pbVar6 = local_2c + 4" (identifier "pbVar6") (= "=") (binary_expression "local_2c + 4" (identifier "local_2c") (+ "+") (number_literal "4"))) (; ";")) (expression_statement "local_2c = pbVar6;" (assignment_expression "local_2c = pbVar6" (identifier "local_2c") (= "=") (identifier "pbVar6")) (; ";")) (expression_statement "pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");" (assignment_expression "pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n")" (identifier "pbVar9") (= "=") (cast_expression "(byte *)strstr((char *)pbVar6,"#NO_APP\n")" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "strstr((char *)pbVar6,"#NO_APP\n")" (identifier "strstr") (argument_list "((char *)pbVar6,"#NO_APP\n")" (( "(") (cast_expression "(char *)pbVar6" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar6")) (, ",") (string_literal ""#NO_APP\n"" (" """) (string_content "#NO_APP") (escape_sequence "\n") (" """)) () ")"))))) (; ";")) (if_statement "if (pbVar9 == (byte *)0x0) {\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }\n      else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }" (if "if") (parenthesized_expression "(pbVar9 == (byte *)0x0)" (( "(") (binary_expression "pbVar9 == (byte *)0x0" (identifier "pbVar9") (== "==") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        sVar11 = (int)DAT_00088a34 - (int)pbVar6;\n        local_34 = (byte *)xmalloc(sVar11 + 1);\n        memcpy(local_34,local_2c,sVar11);\n        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }\n        DAT_00088f58 = (byte *)0x0;\nLAB_00037b57:\n        local_2c = local_34;\n        pbVar9 = local_34 + sVar11;\n        DAT_00088a1c = local_34;\n      }" ({ "{") (expression_statement "sVar11 = (int)DAT_00088a34 - (int)pbVar6;" (assignment_expression "sVar11 = (int)DAT_00088a34 - (int)pbVar6" (identifier "sVar11") (= "=") (binary_expression "(int)DAT_00088a34 - (int)pbVar6" (cast_expression "(int)DAT_00088a34" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "DAT_00088a34")) (- "-") (cast_expression "(int)pbVar6" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar6")))) (; ";")) (expression_statement "local_34 = (byte *)xmalloc(sVar11 + 1);" (assignment_expression "local_34 = (byte *)xmalloc(sVar11 + 1)" (identifier "local_34") (= "=") (cast_expression "(byte *)xmalloc(sVar11 + 1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "xmalloc(sVar11 + 1)" (identifier "xmalloc") (argument_list "(sVar11 + 1)" (( "(") (binary_expression "sVar11 + 1" (identifier "sVar11") (+ "+") (number_literal "1")) () ")"))))) (; ";")) (expression_statement "memcpy(local_34,local_2c,sVar11);" (call_expression "memcpy(local_34,local_2c,sVar11)" (identifier "memcpy") (argument_list "(local_34,local_2c,sVar11)" (( "(") (identifier "local_34") (, ",") (identifier "local_2c") (, ",") (identifier "sVar11") () ")"))) (; ";")) (while_statement "while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0) {\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }" (while "while") (parenthesized_expression "(pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0)" (( "(") (comma_expression "pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0" (assignment_expression "pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38)" (identifier "pbVar9") (= "=") (cast_expression "(byte *)FUN_00028fd0(&DAT_00088a38)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00028fd0(&DAT_00088a38)" (identifier "FUN_00028fd0") (argument_list "(&DAT_00088a38)" (( "(") (pointer_expression "&DAT_00088a38" (& "&") (identifier "DAT_00088a38")) () ")"))))) (, ",") (comma_expression "pbVar6 = DAT_00088a38,\n              pbVar9 != (byte *)0x0" (assignment_expression "pbVar6 = DAT_00088a38" (identifier "pbVar6") (= "=") (identifier "DAT_00088a38")) (, ",") (binary_expression "pbVar9 != (byte *)0x0" (identifier "pbVar9") (!= "!=") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))))) () ")")) (compound_statement "{\n          DAT_00088f58 = DAT_00088a38;\n          DAT_00088a34 = pbVar9;\n          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");\n          if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }\n          sVar16 = (int)pbVar9 - (int)pbVar6;\n          sVar8 = sVar11 + sVar16;\n          local_34 = (byte *)xrealloc(local_34,sVar8);\n          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n          sVar11 = sVar8;\n        }" ({ "{") (expression_statement "DAT_00088f58 = DAT_00088a38;" (assignment_expression "DAT_00088f58 = DAT_00088a38" (identifier "DAT_00088f58") (= "=") (identifier "DAT_00088a38")) (; ";")) (expression_statement "DAT_00088a34 = pbVar9;" (assignment_expression "DAT_00088a34 = pbVar9" (identifier "DAT_00088a34") (= "=") (identifier "pbVar9")) (; ";")) (expression_statement "pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");" (assignment_expression "pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n")" (identifier "pcVar7") (= "=") (call_expression "strstr((char *)DAT_00088a38,"#NO_APP\n")" (identifier "strstr") (argument_list "((char *)DAT_00088a38,"#NO_APP\n")" (( "(") (cast_expression "(char *)DAT_00088a38" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "DAT_00088a38")) (, ",") (string_literal ""#NO_APP\n"" (" """) (string_content "#NO_APP") (escape_sequence "\n") (" """)) () ")")))) (; ";")) (if_statement "if (pcVar7 != (char *)0x0) {\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }" (if "if") (parenthesized_expression "(pcVar7 != (char *)0x0)" (( "(") (binary_expression "pcVar7 != (char *)0x0" (identifier "pcVar7") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            sVar16 = (int)pcVar7 - (int)pbVar6;\n            sVar8 = sVar11 + sVar16;\n            local_34 = (byte *)xrealloc(local_34,sVar8);\n            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);\n            DAT_00088f58 = (byte *)(pcVar7 + 8);\n            sVar11 = sVar8;\n            goto LAB_00037b57;\n          }" ({ "{") (expression_statement "sVar16 = (int)pcVar7 - (int)pbVar6;" (assignment_expression "sVar16 = (int)pcVar7 - (int)pbVar6" (identifier "sVar16") (= "=") (binary_expression "(int)pcVar7 - (int)pbVar6" (cast_expression "(int)pcVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar7")) (- "-") (cast_expression "(int)pbVar6" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar6")))) (; ";")) (expression_statement "sVar8 = sVar11 + sVar16;" (assignment_expression "sVar8 = sVar11 + sVar16" (identifier "sVar8") (= "=") (binary_expression "sVar11 + sVar16" (identifier "sVar11") (+ "+") (identifier "sVar16"))) (; ";")) (expression_statement "local_34 = (byte *)xrealloc(local_34,sVar8);" (assignment_expression "local_34 = (byte *)xrealloc(local_34,sVar8)" (identifier "local_34") (= "=") (cast_expression "(byte *)xrealloc(local_34,sVar8)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "xrealloc(local_34,sVar8)" (identifier "xrealloc") (argument_list "(local_34,sVar8)" (( "(") (identifier "local_34") (, ",") (identifier "sVar8") () ")"))))) (; ";")) (expression_statement "memcpy(local_34 + sVar11,DAT_00088a38,sVar16);" (call_expression "memcpy(local_34 + sVar11,DAT_00088a38,sVar16)" (identifier "memcpy") (argument_list "(local_34 + sVar11,DAT_00088a38,sVar16)" (( "(") (binary_expression "local_34 + sVar11" (identifier "local_34") (+ "+") (identifier "sVar11")) (, ",") (identifier "DAT_00088a38") (, ",") (identifier "sVar16") () ")"))) (; ";")) (expression_statement "DAT_00088f58 = (byte *)(pcVar7 + 8);" (assignment_expression "DAT_00088f58 = (byte *)(pcVar7 + 8)" (identifier "DAT_00088f58") (= "=") (cast_expression "(byte *)(pcVar7 + 8)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar7 + 8)" (( "(") (binary_expression "pcVar7 + 8" (identifier "pcVar7") (+ "+") (number_literal "8")) () ")")))) (; ";")) (expression_statement "sVar11 = sVar8;" (assignment_expression "sVar11 = sVar8" (identifier "sVar11") (= "=") (identifier "sVar8")) (; ";")) (goto_statement "goto LAB_00037b57;" (goto "goto") (statement_identifier "LAB_00037b57") (; ";")) (} "}"))) (expression_statement "sVar16 = (int)pbVar9 - (int)pbVar6;" (assignment_expression "sVar16 = (int)pbVar9 - (int)pbVar6" (identifier "sVar16") (= "=") (binary_expression "(int)pbVar9 - (int)pbVar6" (cast_expression "(int)pbVar9" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar9")) (- "-") (cast_expression "(int)pbVar6" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar6")))) (; ";")) (expression_statement "sVar8 = sVar11 + sVar16;" (assignment_expression "sVar8 = sVar11 + sVar16" (identifier "sVar8") (= "=") (binary_expression "sVar11 + sVar16" (identifier "sVar11") (+ "+") (identifier "sVar16"))) (; ";")) (expression_statement "local_34 = (byte *)xrealloc(local_34,sVar8);" (assignment_expression "local_34 = (byte *)xrealloc(local_34,sVar8)" (identifier "local_34") (= "=") (cast_expression "(byte *)xrealloc(local_34,sVar8)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "xrealloc(local_34,sVar8)" (identifier "xrealloc") (argument_list "(local_34,sVar8)" (( "(") (identifier "local_34") (, ",") (identifier "sVar8") () ")"))))) (; ";")) (expression_statement "memcpy(local_34 + sVar11,DAT_00088a38,sVar16);" (call_expression "memcpy(local_34 + sVar11,DAT_00088a38,sVar16)" (identifier "memcpy") (argument_list "(local_34 + sVar11,DAT_00088a38,sVar16)" (( "(") (binary_expression "local_34 + sVar11" (identifier "local_34") (+ "+") (identifier "sVar11")) (, ",") (identifier "DAT_00088a38") (, ",") (identifier "sVar16") () ")"))) (; ";")) (expression_statement "sVar11 = sVar8;" (assignment_expression "sVar11 = sVar8" (identifier "sVar11") (= "=") (identifier "sVar8")) (; ";")) (} "}"))) (expression_statement "DAT_00088f58 = (byte *)0x0;" (assignment_expression "DAT_00088f58 = (byte *)0x0" (identifier "DAT_00088f58") (= "=") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (labeled_statement "LAB_00037b57:\n        local_2c = local_34;" (statement_identifier "LAB_00037b57") (: ":") (expression_statement "local_2c = local_34;" (assignment_expression "local_2c = local_34" (identifier "local_2c") (= "=") (identifier "local_34")) (; ";"))) (expression_statement "pbVar9 = local_34 + sVar11;" (assignment_expression "pbVar9 = local_34 + sVar11" (identifier "pbVar9") (= "=") (binary_expression "local_34 + sVar11" (identifier "local_34") (+ "+") (identifier "sVar11"))) (; ";")) (expression_statement "DAT_00088a1c = local_34;" (assignment_expression "DAT_00088a1c = local_34" (identifier "DAT_00088a1c") (= "=") (identifier "local_34")) (; ";")) (} "}")) (else_clause "else {\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }" (else "else") (compound_statement "{\n        DAT_00088f58 = pbVar9 + 8;\n        local_34 = (byte *)0x0;\n        DAT_00088a1c = pbVar6;\n      }" ({ "{") (expression_statement "DAT_00088f58 = pbVar9 + 8;" (assignment_expression "DAT_00088f58 = pbVar9 + 8" (identifier "DAT_00088f58") (= "=") (binary_expression "pbVar9 + 8" (identifier "pbVar9") (+ "+") (number_literal "8"))) (; ";")) (expression_statement "local_34 = (byte *)0x0;" (assignment_expression "local_34 = (byte *)0x0" (identifier "local_34") (= "=") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "DAT_00088a1c = pbVar6;" (assignment_expression "DAT_00088a1c = pbVar6" (identifier "DAT_00088a1c") (= "=") (identifier "pbVar6")) (; ";")) (} "}")))) (expression_statement "iVar13 = (int)pbVar9 - (int)DAT_00088a1c;" (assignment_expression "iVar13 = (int)pbVar9 - (int)DAT_00088a1c" (identifier "iVar13") (= "=") (binary_expression "(int)pbVar9 - (int)DAT_00088a1c" (cast_expression "(int)pbVar9" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar9")) (- "-") (cast_expression "(int)DAT_00088a1c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "DAT_00088a1c")))) (; ";")) (expression_statement "DAT_00088a18 = pbVar9;" (assignment_expression "DAT_00088a18 = pbVar9" (identifier "DAT_00088a18") (= "=") (identifier "pbVar9")) (; ";")) (expression_statement "pcVar7 = (char *)xmalloc(iVar13);" (assignment_expression "pcVar7 = (char *)xmalloc(iVar13)" (identifier "pcVar7") (= "=") (cast_expression "(char *)xmalloc(iVar13)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "xmalloc(iVar13)" (identifier "xmalloc") (argument_list "(iVar13)" (( "(") (identifier "iVar13") () ")"))))) (; ";")) (expression_statement "__s_00 = pcVar7;" (assignment_expression "__s_00 = pcVar7" (identifier "__s_00") (= "=") (identifier "pcVar7")) (; ";")) (while_statement "while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }" (while "while") (parenthesized_expression "(pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10)" (( "(") (comma_expression "pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),\n            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10" (assignment_expression "pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7))" (identifier "pcVar10") (= "=") (cast_expression "(char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7))" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7))" (identifier "FUN_00019430") (argument_list "(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7))" (( "(") (identifier "FUN_0002f780") (, ",") (identifier "pcVar7") (, ",") (binary_expression "__s_00 + (iVar13 - (int)pcVar7)" (identifier "__s_00") (+ "+") (parenthesized_expression "(iVar13 - (int)pcVar7)" (( "(") (binary_expression "iVar13 - (int)pcVar7" (identifier "iVar13") (- "-") (cast_expression "(int)pcVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar7"))) () ")"))) () ")"))))) (, ",") (binary_expression "__s_00 + (iVar13 - (int)pcVar7) <= pcVar10" (binary_expression "__s_00 + (iVar13 - (int)pcVar7)" (identifier "__s_00") (+ "+") (parenthesized_expression "(iVar13 - (int)pcVar7)" (( "(") (binary_expression "iVar13 - (int)pcVar7" (identifier "iVar13") (- "-") (cast_expression "(int)pcVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar7"))) () ")"))) (<= "<=") (identifier "pcVar10"))) () ")")) (compound_statement "{\n        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);\n        pcVar7 = __s_00 + iVar13;\n        iVar13 = iVar13 + 100;\n      }" ({ "{") (expression_statement "__s_00 = (char *)xrealloc(__s_00,iVar13 + 100);" (assignment_expression "__s_00 = (char *)xrealloc(__s_00,iVar13 + 100)" (identifier "__s_00") (= "=") (cast_expression "(char *)xrealloc(__s_00,iVar13 + 100)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "xrealloc(__s_00,iVar13 + 100)" (identifier "xrealloc") (argument_list "(__s_00,iVar13 + 100)" (( "(") (identifier "__s_00") (, ",") (binary_expression "iVar13 + 100" (identifier "iVar13") (+ "+") (number_literal "100")) () ")"))))) (; ";")) (expression_statement "pcVar7 = __s_00 + iVar13;" (assignment_expression "pcVar7 = __s_00 + iVar13" (identifier "pcVar7") (= "=") (binary_expression "__s_00 + iVar13" (identifier "__s_00") (+ "+") (identifier "iVar13"))) (; ";")) (expression_statement "iVar13 = iVar13 + 100;" (assignment_expression "iVar13 = iVar13 + 100" (identifier "iVar13") (= "=") (binary_expression "iVar13 + 100" (identifier "iVar13") (+ "+") (number_literal "100"))) (; ";")) (} "}"))) (expression_statement "pcVar7[(int)pcVar10] = '\0';" (assignment_expression "pcVar7[(int)pcVar10] = '\0'" (subscript_expression "pcVar7[(int)pcVar10]" (identifier "pcVar7") ([ "[") (cast_expression "(int)pcVar10" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar10")) (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (if_statement "if (local_34 != (byte *)0x0) {\n        free(local_34);\n      }" (if "if") (parenthesized_expression "(local_34 != (byte *)0x0)" (( "(") (binary_expression "local_34 != (byte *)0x0" (identifier "local_34") (!= "!=") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        free(local_34);\n      }" ({ "{") (expression_statement "free(local_34);" (call_expression "free(local_34)" (identifier "free") (argument_list "(local_34)" (( "(") (identifier "local_34") () ")"))) (; ";")) (} "}"))) (expression_statement "sVar11 = strlen(__s_00);" (assignment_expression "sVar11 = strlen(__s_00)" (identifier "sVar11") (= "=") (call_expression "strlen(__s_00)" (identifier "strlen") (argument_list "(__s_00)" (( "(") (identifier "__s_00") () ")")))) (; ";")) (expression_statement "FUN_00038130(local_28,sVar11);" (call_expression "FUN_00038130(local_28,sVar11)" (identifier "FUN_00038130") (argument_list "(local_28,sVar11)" (( "(") (identifier "local_28") (, ",") (identifier "sVar11") () ")"))) (; ";")) (expression_statement "FUN_00038310(local_28,__s_00,sVar11);" (call_expression "FUN_00038310(local_28,__s_00,sVar11)" (identifier "FUN_00038310") (argument_list "(local_28,__s_00,sVar11)" (( "(") (identifier "local_28") (, ",") (identifier "__s_00") (, ",") (identifier "sVar11") () ")"))) (; ";")) (expression_statement "FUN_00028ea0(local_28,DAT_00088f58,0);" (call_expression "FUN_00028ea0(local_28,DAT_00088f58,0)" (identifier "FUN_00028ea0") (argument_list "(local_28,DAT_00088f58,0)" (( "(") (identifier "local_28") (, ",") (identifier "DAT_00088f58") (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "FUN_000381b0(local_28);" (call_expression "FUN_000381b0(local_28)" (identifier "FUN_000381b0") (argument_list "(local_28)" (( "(") (identifier "local_28") () ")"))) (; ";")) (expression_statement "pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);" (assignment_expression "pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58)" (identifier "pbVar6") (= "=") (cast_expression "(byte *)FUN_00028fd0(&DAT_00088f58)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00028fd0(&DAT_00088f58)" (identifier "FUN_00028fd0") (argument_list "(&DAT_00088f58)" (( "(") (pointer_expression "&DAT_00088f58" (& "&") (identifier "DAT_00088f58")) () ")"))))) (; ";")) (expression_statement "DAT_00088a34 = pbVar6;" (assignment_expression "DAT_00088a34 = pbVar6" (identifier "DAT_00088a34") (= "=") (identifier "pbVar6")) (; ";")) (expression_statement "free(__s_00);" (call_expression "free(__s_00)" (identifier "free") (argument_list "(__s_00)" (( "(") (identifier "__s_00") () ")"))) (; ";")) (} "}")) (else_clause "else {\n      FUN_00030fc0();\n      pbVar6 = DAT_00088a34;\n    }" (else "else") (compound_statement "{\n      FUN_00030fc0();\n      pbVar6 = DAT_00088a34;\n    }" ({ "{") (expression_statement "FUN_00030fc0();" (call_expression "FUN_00030fc0()" (identifier "FUN_00030fc0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pbVar6 = DAT_00088a34;" (assignment_expression "pbVar6 = DAT_00088a34" (identifier "pbVar6") (= "=") (identifier "DAT_00088a34")) (; ";")) (} "}")))) (if_statement "if (pbVar6 <= DAT_00088f58) goto LAB_00036ffa;" (if "if") (parenthesized_expression "(pbVar6 <= DAT_00088f58)" (( "(") (binary_expression "pbVar6 <= DAT_00088f58" (identifier "pbVar6") (<= "<=") (identifier "DAT_00088f58")) () ")")) (goto_statement "goto LAB_00036ffa;" (goto "goto") (statement_identifier "LAB_00036ffa") (; ";"))) (goto_statement "goto LAB_00037044;" (goto "goto") (statement_identifier "LAB_00037044") (; ";")) (} "}")))) (expression_statement "iVar13 = FUN_0001c860();" (assignment_expression "iVar13 = FUN_0001c860()" (identifier "iVar13") (= "=") (call_expression "FUN_0001c860()" (identifier "FUN_0001c860") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar13 != 0) {\n    pbVar9 = (byte *)FUN_0002f7d0(0);\n    if (DAT_00088f58 <= DAT_00088a34) goto LAB_00037376;\n    goto LAB_0003737c;\n  }" (if "if") (parenthesized_expression "(iVar13 != 0)" (( "(") (binary_expression "iVar13 != 0" (identifier "iVar13") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    pbVar9 = (byte *)FUN_0002f7d0(0);\n    if (DAT_00088f58 <= DAT_00088a34) goto LAB_00037376;\n    goto LAB_0003737c;\n  }" ({ "{") (expression_statement "pbVar9 = (byte *)FUN_0002f7d0(0);" (assignment_expression "pbVar9 = (byte *)FUN_0002f7d0(0)" (identifier "pbVar9") (= "=") (cast_expression "(byte *)FUN_0002f7d0(0)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0002f7d0(0)" (identifier "FUN_0002f7d0") (argument_list "(0)" (( "(") (number_literal "0") () ")"))))) (; ";")) (if_statement "if (DAT_00088f58 <= DAT_00088a34) goto LAB_00037376;" (if "if") (parenthesized_expression "(DAT_00088f58 <= DAT_00088a34)" (( "(") (binary_expression "DAT_00088f58 <= DAT_00088a34" (identifier "DAT_00088f58") (<= "<=") (identifier "DAT_00088a34")) () ")")) (goto_statement "goto LAB_00037376;" (goto "goto") (statement_identifier "LAB_00037376") (; ";"))) (goto_statement "goto LAB_0003737c;" (goto "goto") (statement_identifier "LAB_0003737c") (; ";")) (} "}"))) (expression_statement "DAT_00088f58 = DAT_00088f58 + -1;" (assignment_expression "DAT_00088f58 = DAT_00088f58 + -1" (identifier "DAT_00088f58") (= "=") (binary_expression "DAT_00088f58 + -1" (identifier "DAT_00088f58") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar4 = FUN_00025220(&local_2c);" (assignment_expression "bVar4 = FUN_00025220(&local_2c)" (identifier "bVar4") (= "=") (call_expression "FUN_00025220(&local_2c)" (identifier "FUN_00025220") (argument_list "(&local_2c)" (( "(") (pointer_expression "&local_2c" (& "&") (identifier "local_2c")) () ")")))) (; ";")) (expression_statement "pbVar6 = local_2c;" (assignment_expression "pbVar6 = local_2c" (identifier "pbVar6") (= "=") (identifier "local_2c")) (; ";")) (expression_statement "iVar13 = 1;" (assignment_expression "iVar13 = 1" (identifier "iVar13") (= "=") (number_literal "1")) (; ";")) (expression_statement "bVar14 = bVar4;" (assignment_expression "bVar14 = bVar4" (identifier "bVar14") (= "=") (identifier "bVar4")) (; ";")) (if_statement "if (bVar4 == 0x22) {\n    bVar14 = DAT_00088f58[1];\n    iVar13 = 2;\n  }" (if "if") (parenthesized_expression "(bVar4 == 0x22)" (( "(") (binary_expression "bVar4 == 0x22" (identifier "bVar4") (== "==") (number_literal "0x22")) () ")")) (compound_statement "{\n    bVar14 = DAT_00088f58[1];\n    iVar13 = 2;\n  }" ({ "{") (expression_statement "bVar14 = DAT_00088f58[1];" (assignment_expression "bVar14 = DAT_00088f58[1]" (identifier "bVar14") (= "=") (subscript_expression "DAT_00088f58[1]" (identifier "DAT_00088f58") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "iVar13 = 2;" (assignment_expression "iVar13 = 2" (identifier "iVar13") (= "=") (number_literal "2")) (; ";")) (} "}"))) (expression_statement "pbVar9 = DAT_00088f58 + iVar13;" (assignment_expression "pbVar9 = DAT_00088f58 + iVar13" (identifier "pbVar9") (= "=") (binary_expression "DAT_00088f58 + iVar13" (identifier "DAT_00088f58") (+ "+") (identifier "iVar13"))) (; ";")) (if_statement "if (bVar14 == 0x3a) {\n    DAT_00088f48 = FUN_0003d480(local_2c);\n    FUN_00027230((int)(char)bVar4);\n    pbVar6 = DAT_00088f58 + 1;\n    if (DAT_00088f58[1] == 0x20) {\n      pbVar6 = DAT_00088f58 + 2;\n    }\n    goto LAB_00037040;\n  }" (if "if") (parenthesized_expression "(bVar14 == 0x3a)" (( "(") (binary_expression "bVar14 == 0x3a" (identifier "bVar14") (== "==") (number_literal "0x3a")) () ")")) (compound_statement "{\n    DAT_00088f48 = FUN_0003d480(local_2c);\n    FUN_00027230((int)(char)bVar4);\n    pbVar6 = DAT_00088f58 + 1;\n    if (DAT_00088f58[1] == 0x20) {\n      pbVar6 = DAT_00088f58 + 2;\n    }\n    goto LAB_00037040;\n  }" ({ "{") (expression_statement "DAT_00088f48 = FUN_0003d480(local_2c);" (assignment_expression "DAT_00088f48 = FUN_0003d480(local_2c)" (identifier "DAT_00088f48") (= "=") (call_expression "FUN_0003d480(local_2c)" (identifier "FUN_0003d480") (argument_list "(local_2c)" (( "(") (identifier "local_2c") () ")")))) (; ";")) (expression_statement "FUN_00027230((int)(char)bVar4);" (call_expression "FUN_00027230((int)(char)bVar4)" (identifier "FUN_00027230") (argument_list "((int)(char)bVar4)" (( "(") (cast_expression "(int)(char)bVar4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (cast_expression "(char)bVar4" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "bVar4"))) () ")"))) (; ";")) (expression_statement "pbVar6 = DAT_00088f58 + 1;" (assignment_expression "pbVar6 = DAT_00088f58 + 1" (identifier "pbVar6") (= "=") (binary_expression "DAT_00088f58 + 1" (identifier "DAT_00088f58") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (DAT_00088f58[1] == 0x20) {\n      pbVar6 = DAT_00088f58 + 2;\n    }" (if "if") (parenthesized_expression "(DAT_00088f58[1] == 0x20)" (( "(") (binary_expression "DAT_00088f58[1] == 0x20" (subscript_expression "DAT_00088f58[1]" (identifier "DAT_00088f58") ([ "[") (number_literal "1") (] "]")) (== "==") (number_literal "0x20")) () ")")) (compound_statement "{\n      pbVar6 = DAT_00088f58 + 2;\n    }" ({ "{") (expression_statement "pbVar6 = DAT_00088f58 + 2;" (assignment_expression "pbVar6 = DAT_00088f58 + 2" (identifier "pbVar6") (= "=") (binary_expression "DAT_00088f58 + 2" (identifier "DAT_00088f58") (+ "+") (number_literal "2"))) (; ";")) (} "}"))) (goto_statement "goto LAB_00037040;" (goto "goto") (statement_identifier "LAB_00037040") (; ";")) (} "}"))) (if_statement "if (bVar14 == 0x3d) {\n    if (*pbVar9 == 0x3d) goto LAB_00037691;\nLAB_0003746c:\n    uVar12 = 1;\n  }\n  else {\n    if (((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d)) {\n      strncpy(&DAT_00088f60,(char *)local_2c,0x80);\n      puVar3 = PTR__sch_tolower_0007ffcc;\n      DAT_00088fdf = 0;\n      bVar14 = *pbVar6;\n      if (bVar14 == 0) goto LAB_0003726e;\n      do {\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      } while (bVar14 != 0);\n      if (*local_2c == 0x2e) {\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }\n      goto LAB_00037040;\n    }\n    if (pbVar9[1] != 0x3d) goto LAB_0003746c;\nLAB_00037691:\n    uVar12 = 0xffffffff;\n  }" (if "if") (parenthesized_expression "(bVar14 == 0x3d)" (( "(") (binary_expression "bVar14 == 0x3d" (identifier "bVar14") (== "==") (number_literal "0x3d")) () ")")) (compound_statement "{\n    if (*pbVar9 == 0x3d) goto LAB_00037691;\nLAB_0003746c:\n    uVar12 = 1;\n  }" ({ "{") (if_statement "if (*pbVar9 == 0x3d) goto LAB_00037691;" (if "if") (parenthesized_expression "(*pbVar9 == 0x3d)" (( "(") (binary_expression "*pbVar9 == 0x3d" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (number_literal "0x3d")) () ")")) (goto_statement "goto LAB_00037691;" (goto "goto") (statement_identifier "LAB_00037691") (; ";"))) (labeled_statement "LAB_0003746c:\n    uVar12 = 1;" (statement_identifier "LAB_0003746c") (: ":") (expression_statement "uVar12 = 1;" (assignment_expression "uVar12 = 1" (identifier "uVar12") (= "=") (number_literal "1")) (; ";"))) (} "}")) (else_clause "else {\n    if (((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d)) {\n      strncpy(&DAT_00088f60,(char *)local_2c,0x80);\n      puVar3 = PTR__sch_tolower_0007ffcc;\n      DAT_00088fdf = 0;\n      bVar14 = *pbVar6;\n      if (bVar14 == 0) goto LAB_0003726e;\n      do {\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      } while (bVar14 != 0);\n      if (*local_2c == 0x2e) {\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }\n      goto LAB_00037040;\n    }\n    if (pbVar9[1] != 0x3d) goto LAB_0003746c;\nLAB_00037691:\n    uVar12 = 0xffffffff;\n  }" (else "else") (compound_statement "{\n    if (((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d)) {\n      strncpy(&DAT_00088f60,(char *)local_2c,0x80);\n      puVar3 = PTR__sch_tolower_0007ffcc;\n      DAT_00088fdf = 0;\n      bVar14 = *pbVar6;\n      if (bVar14 == 0) goto LAB_0003726e;\n      do {\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      } while (bVar14 != 0);\n      if (*local_2c == 0x2e) {\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }\n      goto LAB_00037040;\n    }\n    if (pbVar9[1] != 0x3d) goto LAB_0003746c;\nLAB_00037691:\n    uVar12 = 0xffffffff;\n  }" ({ "{") (if_statement "if (((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d)) {\n      strncpy(&DAT_00088f60,(char *)local_2c,0x80);\n      puVar3 = PTR__sch_tolower_0007ffcc;\n      DAT_00088fdf = 0;\n      bVar14 = *pbVar6;\n      if (bVar14 == 0) goto LAB_0003726e;\n      do {\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      } while (bVar14 != 0);\n      if (*local_2c == 0x2e) {\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }\n      goto LAB_00037040;\n    }" (if "if") (parenthesized_expression "(((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d))" (( "(") (binary_expression "((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d)" (parenthesized_expression "((bVar14 != 0x20) && (bVar14 != 9))" (( "(") (binary_expression "(bVar14 != 0x20) && (bVar14 != 9)" (parenthesized_expression "(bVar14 != 0x20)" (( "(") (binary_expression "bVar14 != 0x20" (identifier "bVar14") (!= "!=") (number_literal "0x20")) () ")")) (&& "&&") (parenthesized_expression "(bVar14 != 9)" (( "(") (binary_expression "bVar14 != 9" (identifier "bVar14") (!= "!=") (number_literal "9")) () ")"))) () ")")) (|| "||") (parenthesized_expression "(*pbVar9 != 0x3d)" (( "(") (binary_expression "*pbVar9 != 0x3d" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (!= "!=") (number_literal "0x3d")) () ")"))) () ")")) (compound_statement "{\n      strncpy(&DAT_00088f60,(char *)local_2c,0x80);\n      puVar3 = PTR__sch_tolower_0007ffcc;\n      DAT_00088fdf = 0;\n      bVar14 = *pbVar6;\n      if (bVar14 == 0) goto LAB_0003726e;\n      do {\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      } while (bVar14 != 0);\n      if (*local_2c == 0x2e) {\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }\n      goto LAB_00037040;\n    }" ({ "{") (expression_statement "strncpy(&DAT_00088f60,(char *)local_2c,0x80);" (call_expression "strncpy(&DAT_00088f60,(char *)local_2c,0x80)" (identifier "strncpy") (argument_list "(&DAT_00088f60,(char *)local_2c,0x80)" (( "(") (pointer_expression "&DAT_00088f60" (& "&") (identifier "DAT_00088f60")) (, ",") (cast_expression "(char *)local_2c" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_2c")) (, ",") (number_literal "0x80") () ")"))) (; ";")) (expression_statement "puVar3 = PTR__sch_tolower_0007ffcc;" (assignment_expression "puVar3 = PTR__sch_tolower_0007ffcc" (identifier "puVar3") (= "=") (identifier "PTR__sch_tolower_0007ffcc")) (; ";")) (expression_statement "DAT_00088fdf = 0;" (assignment_expression "DAT_00088fdf = 0" (identifier "DAT_00088fdf") (= "=") (number_literal "0")) (; ";")) (expression_statement "bVar14 = *pbVar6;" (assignment_expression "bVar14 = *pbVar6" (identifier "bVar14") (= "=") (pointer_expression "*pbVar6" (* "*") (identifier "pbVar6"))) (; ";")) (if_statement "if (bVar14 == 0) goto LAB_0003726e;" (if "if") (parenthesized_expression "(bVar14 == 0)" (( "(") (binary_expression "bVar14 == 0" (identifier "bVar14") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_0003726e;" (goto "goto") (statement_identifier "LAB_0003726e") (; ";"))) (do_statement "do {\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      } while (bVar14 != 0);" (do "do") (compound_statement "{\n        *pbVar6 = puVar3[bVar14];\n        bVar14 = pbVar6[1];\n        pbVar6 = pbVar6 + 1;\n      }" ({ "{") (expression_statement "*pbVar6 = puVar3[bVar14];" (assignment_expression "*pbVar6 = puVar3[bVar14]" (pointer_expression "*pbVar6" (* "*") (identifier "pbVar6")) (= "=") (subscript_expression "puVar3[bVar14]" (identifier "puVar3") ([ "[") (identifier "bVar14") (] "]"))) (; ";")) (expression_statement "bVar14 = pbVar6[1];" (assignment_expression "bVar14 = pbVar6[1]" (identifier "bVar14") (= "=") (subscript_expression "pbVar6[1]" (identifier "pbVar6") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "pbVar6 = pbVar6 + 1;" (assignment_expression "pbVar6 = pbVar6 + 1" (identifier "pbVar6") (= "=") (binary_expression "pbVar6 + 1" (identifier "pbVar6") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar14 != 0)" (( "(") (binary_expression "bVar14 != 0" (identifier "bVar14") (!= "!=") (number_literal "0")) () ")")) (; ";")) (if_statement "if (*local_2c == 0x2e) {\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }\n      else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }" (if "if") (parenthesized_expression "(*local_2c == 0x2e)" (( "(") (binary_expression "*local_2c == 0x2e" (pointer_expression "*local_2c" (* "*") (identifier "local_2c")) (== "==") (number_literal "0x2e")) () ")")) (compound_statement "{\n        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);\n        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }\n      }" ({ "{") (expression_statement "iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);" (assignment_expression "iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1)" (identifier "iVar13") (= "=") (call_expression "FUN_000283e0(DAT_00088a28,local_2c + 1)" (identifier "FUN_000283e0") (argument_list "(DAT_00088a28,local_2c + 1)" (( "(") (identifier "DAT_00088a28") (, ",") (binary_expression "local_2c + 1" (identifier "local_2c") (+ "+") (number_literal "1")) () ")")))) (; ";")) (if_statement "if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }\n        else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }" (if "if") (parenthesized_expression "((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0))" (( "(") (binary_expression "(iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)" (parenthesized_expression "(iVar13 == 0)" (( "(") (binary_expression "iVar13 == 0" (identifier "iVar13") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)" (( "(") (comma_expression "pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0" (assignment_expression "pcVar2 = *(code **)(iVar13 + 4)" (identifier "pcVar2") (= "=") (pointer_expression "*(code **)(iVar13 + 4)" (* "*") (cast_expression "(code **)(iVar13 + 4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar13 + 4)" (( "(") (binary_expression "iVar13 + 4" (identifier "iVar13") (+ "+") (number_literal "4")) () ")"))))) (, ",") (binary_expression "pcVar2 == (code *)0x0" (identifier "pcVar2") (== "==") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")))) () ")"))) () ")")) (compound_statement "{\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          pbVar9 = DAT_00088f58;\n          FUN_00027230((int)(char)bVar4);\n          FUN_00030fc0();\n          bVar14 = DAT_00088f58[-1];\n          pbVar6 = DAT_00088f58 + -1;\n          DAT_00088f58 = DAT_00088f58 + -1;\n          *pbVar6 = 0;\n          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }\n        }" ({ "{") (if_statement "if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }" (if "if") (parenthesized_expression "(DAT_00088a30 != 0)" (( "(") (binary_expression "DAT_00088a30 != 0" (identifier "DAT_00088a30") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }" ({ "{") (expression_statement "FUN_000307b0(1,0,0,0);" (call_expression "FUN_000307b0(1,0,0,0)" (identifier "FUN_000307b0") (argument_list "(1,0,0,0)" (( "(") (number_literal "1") (, ",") (number_literal "0") (, ",") (number_literal "0") (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "DAT_00088a30 = 0;" (assignment_expression "DAT_00088a30 = 0" (identifier "DAT_00088a30") (= "=") (number_literal "0")) (; ";")) (if_statement "if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }" (if "if") (parenthesized_expression "(DAT_00088f48 != 0)" (( "(") (binary_expression "DAT_00088f48 != 0" (identifier "DAT_00088f48") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }" ({ "{") (expression_statement "FUN_0003e160(DAT_00088f48,DAT_00088e84);" (call_expression "FUN_0003e160(DAT_00088f48,DAT_00088e84)" (identifier "FUN_0003e160") (argument_list "(DAT_00088f48,DAT_00088e84)" (( "(") (identifier "DAT_00088f48") (, ",") (identifier "DAT_00088e84") () ")"))) (; ";")) (expression_statement "uVar20 = FUN_00027cf0();" (assignment_expression "uVar20 = FUN_00027cf0()" (identifier "uVar20") (= "=") (call_expression "FUN_00027cf0()" (identifier "FUN_00027cf0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "FUN_0003ae10(DAT_00088f48,uVar20);" (call_expression "FUN_0003ae10(DAT_00088f48,uVar20)" (identifier "FUN_0003ae10") (argument_list "(DAT_00088f48,uVar20)" (( "(") (identifier "DAT_00088f48") (, ",") (identifier "uVar20") () ")"))) (; ";")) (} "}"))) (} "}"))) (expression_statement "pbVar9 = DAT_00088f58;" (assignment_expression "pbVar9 = DAT_00088f58" (identifier "pbVar9") (= "=") (identifier "DAT_00088f58")) (; ";")) (expression_statement "FUN_00027230((int)(char)bVar4);" (call_expression "FUN_00027230((int)(char)bVar4)" (identifier "FUN_00027230") (argument_list "((int)(char)bVar4)" (( "(") (cast_expression "(int)(char)bVar4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (cast_expression "(char)bVar4" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "bVar4"))) () ")"))) (; ";")) (expression_statement "FUN_00030fc0();" (call_expression "FUN_00030fc0()" (identifier "FUN_00030fc0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "bVar14 = DAT_00088f58[-1];" (assignment_expression "bVar14 = DAT_00088f58[-1]" (identifier "bVar14") (= "=") (subscript_expression "DAT_00088f58[-1]" (identifier "DAT_00088f58") ([ "[") (number_literal "-1") (] "]"))) (; ";")) (expression_statement "pbVar6 = DAT_00088f58 + -1;" (assignment_expression "pbVar6 = DAT_00088f58 + -1" (identifier "pbVar6") (= "=") (binary_expression "DAT_00088f58 + -1" (identifier "DAT_00088f58") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "DAT_00088f58 = DAT_00088f58 + -1;" (assignment_expression "DAT_00088f58 = DAT_00088f58 + -1" (identifier "DAT_00088f58") (= "=") (binary_expression "DAT_00088f58 + -1" (identifier "DAT_00088f58") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "*pbVar6 = 0;" (assignment_expression "*pbVar6 = 0" (pointer_expression "*pbVar6" (* "*") (identifier "pbVar6")) (= "=") (number_literal "0")) (; ";")) (if_statement "if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))\n          {\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }" (if "if") (parenthesized_expression "((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))" (( "(") (binary_expression "(DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)" (parenthesized_expression "(DAT_00088f1c == 0)" (( "(") (binary_expression "DAT_00088f1c == 0" (identifier "DAT_00088f1c") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)" (( "(") (comma_expression "iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0" (assignment_expression "iVar13 = FUN_0002fa10()" (identifier "iVar13") (= "=") (call_expression "FUN_0002fa10()" (identifier "FUN_0002fa10") (argument_list "()" (( "(") () ")")))) (, ",") (comma_expression "pbVar6 = DAT_00088f58, iVar13 == 0" (assignment_expression "pbVar6 = DAT_00088f58" (identifier "pbVar6") (= "=") (identifier "DAT_00088f58")) (, ",") (binary_expression "iVar13 == 0" (identifier "iVar13") (== "==") (number_literal "0")))) () ")"))) () ")")) (compound_statement "{\n            pbVar6 = local_2c;\n            *pbVar9 = 0;\n            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);\n            FUN_0002ec90(uVar12,pbVar6);\n            pbVar6 = DAT_00088f58 + 1;\n            *DAT_00088f58 = bVar14;\n            DAT_00088f58 = pbVar6;\n            pbVar6 = DAT_00088f58;\n          }" ({ "{") (expression_statement "pbVar6 = local_2c;" (assignment_expression "pbVar6 = local_2c" (identifier "pbVar6") (= "=") (identifier "local_2c")) (; ";")) (expression_statement "*pbVar9 = 0;" (assignment_expression "*pbVar9 = 0" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);" (assignment_expression "uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"unknown pseudo-op: `%s\'",5)" (identifier "dcgettext") (argument_list "(0,"unknown pseudo-op: `%s\'",5)" (( "(") (number_literal "0") (, ",") (string_literal ""unknown pseudo-op: `%s\'"" (" """) (string_content "unknown pseudo-op: `%s") (escape_sequence "\'") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_0002ec90(uVar12,pbVar6);" (call_expression "FUN_0002ec90(uVar12,pbVar6)" (identifier "FUN_0002ec90") (argument_list "(uVar12,pbVar6)" (( "(") (identifier "uVar12") (, ",") (identifier "pbVar6") () ")"))) (; ";")) (expression_statement "pbVar6 = DAT_00088f58 + 1;" (assignment_expression "pbVar6 = DAT_00088f58 + 1" (identifier "pbVar6") (= "=") (binary_expression "DAT_00088f58 + 1" (identifier "DAT_00088f58") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*DAT_00088f58 = bVar14;" (assignment_expression "*DAT_00088f58 = bVar14" (pointer_expression "*DAT_00088f58" (* "*") (identifier "DAT_00088f58")) (= "=") (identifier "bVar14")) (; ";")) (expression_statement "DAT_00088f58 = pbVar6;" (assignment_expression "DAT_00088f58 = pbVar6" (identifier "DAT_00088f58") (= "=") (identifier "pbVar6")) (; ";")) (expression_statement "pbVar6 = DAT_00088f58;" (assignment_expression "pbVar6 = DAT_00088f58" (identifier "pbVar6") (= "=") (identifier "DAT_00088f58")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }" (else "else") (compound_statement "{\n          if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          cVar5 = FUN_00027230((int)(char)bVar4);\n          if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }\n          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));\n          pbVar6 = DAT_00088f58;\n          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;\n        }" ({ "{") (if_statement "if ((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }" (if "if") (parenthesized_expression "((DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0))))))" (( "(") (binary_expression "(DAT_00088a30 != 0) &&\n             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))" (parenthesized_expression "(DAT_00088a30 != 0)" (( "(") (binary_expression "DAT_00088a30 != 0" (identifier "DAT_00088a30") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))" (( "(") (parenthesized_expression "(((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0))))" (( "(") (binary_expression "((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))\n              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))" (parenthesized_expression "((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))" (( "(") (binary_expression "(pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1)" (parenthesized_expression "(pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910))" (( "(") (binary_expression "pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)" (binary_expression "pcVar2 != FUN_00034160" (identifier "pcVar2") (!= "!=") (identifier "FUN_00034160")) (&& "&&") (parenthesized_expression "(pcVar2 != FUN_00034910)" (( "(") (binary_expression "pcVar2 != FUN_00034910" (identifier "pcVar2") (!= "!=") (identifier "FUN_00034910")) () ")"))) () ")")) (|| "||") (parenthesized_expression "(*(int *)(iVar13 + 8) != 1)" (( "(") (binary_expression "*(int *)(iVar13 + 8) != 1" (pointer_expression "*(int *)(iVar13 + 8)" (* "*") (cast_expression "(int *)(iVar13 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar13 + 8)" (( "(") (binary_expression "iVar13 + 8" (identifier "iVar13") (+ "+") (number_literal "8")) () ")")))) (!= "!=") (number_literal "1")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))" (( "(") (parenthesized_expression "((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0))" (( "(") (binary_expression "(((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)" (binary_expression "(((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&\n                   pcVar2 != FUN_00035b60" (parenthesized_expression "(((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c)" (( "(") (binary_expression "((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c" (parenthesized_expression "((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94)" (( "(") (binary_expression "(((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&\n                    pcVar2 != (code *)PTR_FUN_0007ff94" (parenthesized_expression "(((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4)" (( "(") (binary_expression "((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4" (parenthesized_expression "((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4)" (( "(") (binary_expression "(pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&\n                      pcVar2 != (code *)PTR_FUN_0007ffd4" (parenthesized_expression "(pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4)" (( "(") (binary_expression "pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4" (binary_expression "pcVar2 != (code *)PTR_FUN_0007ff74" (identifier "pcVar2") (!= "!=") (cast_expression "(code *)PTR_FUN_0007ff74" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_0007ff74"))) (&& "&&") (binary_expression "pcVar2 != (code *)PTR_FUN_0007fff4" (identifier "pcVar2") (!= "!=") (cast_expression "(code *)PTR_FUN_0007fff4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_0007fff4")))) () ")")) (&& "&&") (binary_expression "pcVar2 != (code *)PTR_FUN_0007ffd4" (identifier "pcVar2") (!= "!=") (cast_expression "(code *)PTR_FUN_0007ffd4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_0007ffd4")))) () ")")) (&& "&&") (binary_expression "pcVar2 != (code *)PTR_FUN_0007ffc4" (identifier "pcVar2") (!= "!=") (cast_expression "(code *)PTR_FUN_0007ffc4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_0007ffc4")))) () ")")) (&& "&&") (binary_expression "pcVar2 != (code *)PTR_FUN_0007ff94" (identifier "pcVar2") (!= "!=") (cast_expression "(code *)PTR_FUN_0007ff94" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_0007ff94")))) () ")")) (&& "&&") (binary_expression "pcVar2 != (code *)PTR_FUN_0007ff5c" (identifier "pcVar2") (!= "!=") (cast_expression "(code *)PTR_FUN_0007ff5c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_0007ff5c")))) () ")")) (&& "&&") (binary_expression "pcVar2 != FUN_00035b60" (identifier "pcVar2") (!= "!=") (identifier "FUN_00035b60"))) (&& "&&") (parenthesized_expression "(pcVar2 != thunk_FUN_00030fc0)" (( "(") (binary_expression "pcVar2 != thunk_FUN_00030fc0" (identifier "pcVar2") (!= "!=") (identifier "thunk_FUN_00030fc0")) () ")"))) () ")")) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }" ({ "{") (expression_statement "FUN_000307b0(1,0,0,0);" (call_expression "FUN_000307b0(1,0,0,0)" (identifier "FUN_000307b0") (argument_list "(1,0,0,0)" (( "(") (number_literal "1") (, ",") (number_literal "0") (, ",") (number_literal "0") (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "DAT_00088a30 = 0;" (assignment_expression "DAT_00088a30 = 0" (identifier "DAT_00088a30") (= "=") (number_literal "0")) (; ";")) (if_statement "if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }" (if "if") (parenthesized_expression "(DAT_00088f48 != 0)" (( "(") (binary_expression "DAT_00088f48 != 0" (identifier "DAT_00088f48") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }" ({ "{") (expression_statement "FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);" (call_expression "FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX)" (identifier "FUN_0003e160") (argument_list "(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX)" (( "(") (identifier "DAT_00088f48") (, ",") (identifier "DAT_00088e84") (, ",") (identifier "extraout_EDX") (, ",") (identifier "extraout_EDX") () ")"))) (; ";")) (expression_statement "uVar20 = FUN_00027cf0();" (assignment_expression "uVar20 = FUN_00027cf0()" (identifier "uVar20") (= "=") (call_expression "FUN_00027cf0()" (identifier "FUN_00027cf0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "FUN_0003ae10(DAT_00088f48,uVar20);" (call_expression "FUN_0003ae10(DAT_00088f48,uVar20)" (identifier "FUN_0003ae10") (argument_list "(DAT_00088f48,uVar20)" (( "(") (identifier "DAT_00088f48") (, ",") (identifier "uVar20") () ")"))) (; ";")) (} "}"))) (} "}"))) (expression_statement "cVar5 = FUN_00027230((int)(char)bVar4);" (assignment_expression "cVar5 = FUN_00027230((int)(char)bVar4)" (identifier "cVar5") (= "=") (call_expression "FUN_00027230((int)(char)bVar4)" (identifier "FUN_00027230") (argument_list "((int)(char)bVar4)" (( "(") (cast_expression "(int)(char)bVar4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (cast_expression "(char)bVar4" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "bVar4"))) () ")")))) (; ";")) (if_statement "if ((cVar5 == ' ') || (cVar5 == '\t')) {\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }" (if "if") (parenthesized_expression "((cVar5 == ' ') || (cVar5 == '\t'))" (( "(") (binary_expression "(cVar5 == ' ') || (cVar5 == '\t')" (parenthesized_expression "(cVar5 == ' ')" (( "(") (binary_expression "cVar5 == ' '" (identifier "cVar5") (== "==") (char_literal "' '" (' "'") (character " ") (' "'"))) () ")")) (|| "||") (parenthesized_expression "(cVar5 == '\t')" (( "(") (binary_expression "cVar5 == '\t'" (identifier "cVar5") (== "==") (char_literal "'\t'" (' "'") (escape_sequence "\t") (' "'"))) () ")"))) () ")")) (compound_statement "{\n            DAT_00088f58 = DAT_00088f58 + 1;\n          }" ({ "{") (expression_statement "DAT_00088f58 = DAT_00088f58 + 1;" (assignment_expression "DAT_00088f58 = DAT_00088f58 + 1" (identifier "DAT_00088f58") (= "=") (binary_expression "DAT_00088f58 + 1" (identifier "DAT_00088f58") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (expression_statement "(**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));" (call_expression "(**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8))" (parenthesized_expression "(**(code **)(iVar13 + 4))" (( "(") (pointer_expression "**(code **)(iVar13 + 4)" (* "*") (pointer_expression "*(code **)(iVar13 + 4)" (* "*") (cast_expression "(code **)(iVar13 + 4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar13 + 4)" (( "(") (binary_expression "iVar13 + 4" (identifier "iVar13") (+ "+") (number_literal "4")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(iVar13 + 8))" (( "(") (pointer_expression "*(undefined4 *)(iVar13 + 8)" (* "*") (cast_expression "(undefined4 *)(iVar13 + 8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar13 + 8)" (( "(") (binary_expression "iVar13 + 8" (identifier "iVar13") (+ "+") (number_literal "8")) () ")")))) () ")"))) (; ";")) (expression_statement "pbVar6 = DAT_00088f58;" (assignment_expression "pbVar6 = DAT_00088f58" (identifier "pbVar6") (= "=") (identifier "DAT_00088f58")) (; ";")) (if_statement "if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;" (if "if") (parenthesized_expression "(*(code **)(iVar13 + 4) == FUN_000300b0)" (( "(") (binary_expression "*(code **)(iVar13 + 4) == FUN_000300b0" (pointer_expression "*(code **)(iVar13 + 4)" (* "*") (cast_expression "(code **)(iVar13 + 4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar13 + 4)" (( "(") (binary_expression "iVar13 + 4" (identifier "iVar13") (+ "+") (number_literal "4")) () ")")))) (== "==") (identifier "FUN_000300b0")) () ")")) (goto_statement "goto LAB_00037649;" (goto "goto") (statement_identifier "LAB_00037649") (; ";"))) (} "}")))) (} "}")) (else_clause "else {\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }" (else "else") (compound_statement "{\nLAB_0003726e:\n        FUN_00027230((int)(char)bVar4);\n        DAT_00088f58 = (byte *)FUN_0002f7d0(0);\n        bVar14 = *DAT_00088f58;\n        *DAT_00088f58 = 0;\n        FUN_00036f40();\n        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }\n      }" ({ "{") (labeled_statement "LAB_0003726e:\n        FUN_00027230((int)(char)bVar4);" (statement_identifier "LAB_0003726e") (: ":") (expression_statement "FUN_00027230((int)(char)bVar4);" (call_expression "FUN_00027230((int)(char)bVar4)" (identifier "FUN_00027230") (argument_list "((int)(char)bVar4)" (( "(") (cast_expression "(int)(char)bVar4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (cast_expression "(char)bVar4" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "bVar4"))) () ")"))) (; ";"))) (expression_statement "DAT_00088f58 = (byte *)FUN_0002f7d0(0);" (assignment_expression "DAT_00088f58 = (byte *)FUN_0002f7d0(0)" (identifier "DAT_00088f58") (= "=") (cast_expression "(byte *)FUN_0002f7d0(0)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0002f7d0(0)" (identifier "FUN_0002f7d0") (argument_list "(0)" (( "(") (number_literal "0") () ")"))))) (; ";")) (expression_statement "bVar14 = *DAT_00088f58;" (assignment_expression "bVar14 = *DAT_00088f58" (identifier "bVar14") (= "=") (pointer_expression "*DAT_00088f58" (* "*") (identifier "DAT_00088f58"))) (; ";")) (expression_statement "*DAT_00088f58 = 0;" (assignment_expression "*DAT_00088f58 = 0" (pointer_expression "*DAT_00088f58" (* "*") (identifier "DAT_00088f58")) (= "=") (number_literal "0")) (; ";")) (expression_statement "FUN_00036f40();" (call_expression "FUN_00036f40()" (identifier "FUN_00036f40") (argument_list "()" (( "(") () ")"))) (; ";")) (if_statement "if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }" (if "if") (parenthesized_expression "((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))" (( "(") (binary_expression "(DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)" (parenthesized_expression "(DAT_00088f1c == 0)" (( "(") (binary_expression "DAT_00088f1c == 0" (identifier "DAT_00088f1c") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)" (( "(") (comma_expression "iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0" (assignment_expression "iVar13 = FUN_0002fa10()" (identifier "iVar13") (= "=") (call_expression "FUN_0002fa10()" (identifier "FUN_0002fa10") (argument_list "()" (( "(") () ")")))) (, ",") (comma_expression "pbVar6 = DAT_00088f58, iVar13 == 0" (assignment_expression "pbVar6 = DAT_00088f58" (identifier "pbVar6") (= "=") (identifier "DAT_00088f58")) (, ",") (binary_expression "iVar13 == 0" (identifier "iVar13") (== "==") (number_literal "0")))) () ")"))) () ")")) (compound_statement "{\n          if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }\n          FUN_00048cd0(local_2c);\n          if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }\n          pbVar6 = DAT_00088f58 + 1;\n          *DAT_00088f58 = bVar14;\n          DAT_00088f58 = pbVar6;\n          pbVar6 = DAT_00088f58;\n        }" ({ "{") (if_statement "if (DAT_00088a30 != 0) {\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }" (if "if") (parenthesized_expression "(DAT_00088a30 != 0)" (( "(") (binary_expression "DAT_00088a30 != 0" (identifier "DAT_00088a30") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            FUN_000307b0(1,0,0,0);\n            DAT_00088a30 = 0;\n            if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }\n          }" ({ "{") (expression_statement "FUN_000307b0(1,0,0,0);" (call_expression "FUN_000307b0(1,0,0,0)" (identifier "FUN_000307b0") (argument_list "(1,0,0,0)" (( "(") (number_literal "1") (, ",") (number_literal "0") (, ",") (number_literal "0") (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "DAT_00088a30 = 0;" (assignment_expression "DAT_00088a30 = 0" (identifier "DAT_00088a30") (= "=") (number_literal "0")) (; ";")) (if_statement "if (DAT_00088f48 != 0) {\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }" (if "if") (parenthesized_expression "(DAT_00088f48 != 0)" (( "(") (binary_expression "DAT_00088f48 != 0" (identifier "DAT_00088f48") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              FUN_0003e160(DAT_00088f48,DAT_00088e84);\n              uVar20 = FUN_00027cf0();\n              FUN_0003ae10(DAT_00088f48,uVar20);\n            }" ({ "{") (expression_statement "FUN_0003e160(DAT_00088f48,DAT_00088e84);" (call_expression "FUN_0003e160(DAT_00088f48,DAT_00088e84)" (identifier "FUN_0003e160") (argument_list "(DAT_00088f48,DAT_00088e84)" (( "(") (identifier "DAT_00088f48") (, ",") (identifier "DAT_00088e84") () ")"))) (; ";")) (expression_statement "uVar20 = FUN_00027cf0();" (assignment_expression "uVar20 = FUN_00027cf0()" (identifier "uVar20") (= "=") (call_expression "FUN_00027cf0()" (identifier "FUN_00027cf0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "FUN_0003ae10(DAT_00088f48,uVar20);" (call_expression "FUN_0003ae10(DAT_00088f48,uVar20)" (identifier "FUN_0003ae10") (argument_list "(DAT_00088f48,uVar20)" (( "(") (identifier "DAT_00088f48") (, ",") (identifier "uVar20") () ")"))) (; ";")) (} "}"))) (} "}"))) (expression_statement "FUN_00048cd0(local_2c);" (call_expression "FUN_00048cd0(local_2c)" (identifier "FUN_00048cd0") (argument_list "(local_2c)" (( "(") (identifier "local_2c") () ")"))) (; ";")) (if_statement "if (DAT_00088f58 == (byte *)0x0) {\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }" (if "if") (parenthesized_expression "(DAT_00088f58 == (byte *)0x0)" (( "(") (binary_expression "DAT_00088f58 == (byte *)0x0" (identifier "DAT_00088f58") (== "==") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            uVar12 = dcgettext(0,"unable to continue with assembly.",5);\n                    \n            FUN_0002ed30(uVar12);\n          }" ({ "{") (expression_statement "uVar12 = dcgettext(0,"unable to continue with assembly.",5);" (assignment_expression "uVar12 = dcgettext(0,"unable to continue with assembly.",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"unable to continue with assembly.",5)" (identifier "dcgettext") (argument_list "(0,"unable to continue with assembly.",5)" (( "(") (number_literal "0") (, ",") (string_literal ""unable to continue with assembly."" (" """) (string_content "unable to continue with assembly.") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_0002ed30(uVar12);" (call_expression "FUN_0002ed30(uVar12)" (identifier "FUN_0002ed30") (argument_list "(uVar12)" (( "(") (identifier "uVar12") () ")"))) (; ";")) (} "}"))) (expression_statement "pbVar6 = DAT_00088f58 + 1;" (assignment_expression "pbVar6 = DAT_00088f58 + 1" (identifier "pbVar6") (= "=") (binary_expression "DAT_00088f58 + 1" (identifier "DAT_00088f58") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*DAT_00088f58 = bVar14;" (assignment_expression "*DAT_00088f58 = bVar14" (pointer_expression "*DAT_00088f58" (* "*") (identifier "DAT_00088f58")) (= "=") (identifier "bVar14")) (; ";")) (expression_statement "DAT_00088f58 = pbVar6;" (assignment_expression "DAT_00088f58 = pbVar6" (identifier "DAT_00088f58") (= "=") (identifier "pbVar6")) (; ";")) (expression_statement "pbVar6 = DAT_00088f58;" (assignment_expression "pbVar6 = DAT_00088f58" (identifier "pbVar6") (= "=") (identifier "DAT_00088f58")) (; ";")) (} "}"))) (} "}")))) (goto_statement "goto LAB_00037040;" (goto "goto") (statement_identifier "LAB_00037040") (; ";")) (} "}"))) (if_statement "if (pbVar9[1] != 0x3d) goto LAB_0003746c;" (if "if") (parenthesized_expression "(pbVar9[1] != 0x3d)" (( "(") (binary_expression "pbVar9[1] != 0x3d" (subscript_expression "pbVar9[1]" (identifier "pbVar9") ([ "[") (number_literal "1") (] "]")) (!= "!=") (number_literal "0x3d")) () ")")) (goto_statement "goto LAB_0003746c;" (goto "goto") (statement_identifier "LAB_0003746c") (; ";"))) (labeled_statement "LAB_00037691:\n    uVar12 = 0xffffffff;" (statement_identifier "LAB_00037691") (: ":") (expression_statement "uVar12 = 0xffffffff;" (assignment_expression "uVar12 = 0xffffffff" (identifier "uVar12") (= "=") (number_literal "0xffffffff")) (; ";"))) (} "}")))) (expression_statement "FUN_00036d70(local_2c,uVar12);" (call_expression "FUN_00036d70(local_2c,uVar12)" (identifier "FUN_00036d70") (argument_list "(local_2c,uVar12)" (( "(") (identifier "local_2c") (, ",") (identifier "uVar12") () ")"))) (; ";")) (expression_statement "FUN_00031210();" (call_expression "FUN_00031210()" (identifier "FUN_00031210") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pbVar6 = DAT_00088f58;" (assignment_expression "pbVar6 = DAT_00088f58" (identifier "pbVar6") (= "=") (identifier "DAT_00088f58")) (; ";")) (goto_statement "goto LAB_00037040;" (goto "goto") (statement_identifier "LAB_00037040") (; ";")) (labeled_statement "LAB_00037439:\n  iVar13 = FUN_0001c860();" (statement_identifier "LAB_00037439") (: ":") (expression_statement "iVar13 = FUN_0001c860();" (assignment_expression "iVar13 = FUN_0001c860()" (identifier "iVar13") (= "=") (call_expression "FUN_0001c860()" (identifier "FUN_0001c860") (argument_list "()" (( "(") () ")")))) (; ";"))) (if_statement "if (iVar13 == 0) {\n    DAT_00088f58 = DAT_00088f58 + -1;\n    FUN_00031210();\n    pbVar6 = DAT_00088f58;\n    goto LAB_00037040;\n  }" (if "if") (parenthesized_expression "(iVar13 == 0)" (( "(") (binary_expression "iVar13 == 0" (identifier "iVar13") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    DAT_00088f58 = DAT_00088f58 + -1;\n    FUN_00031210();\n    pbVar6 = DAT_00088f58;\n    goto LAB_00037040;\n  }" ({ "{") (expression_statement "DAT_00088f58 = DAT_00088f58 + -1;" (assignment_expression "DAT_00088f58 = DAT_00088f58 + -1" (identifier "DAT_00088f58") (= "=") (binary_expression "DAT_00088f58 + -1" (identifier "DAT_00088f58") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "FUN_00031210();" (call_expression "FUN_00031210()" (identifier "FUN_00031210") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pbVar6 = DAT_00088f58;" (assignment_expression "pbVar6 = DAT_00088f58" (identifier "pbVar6") (= "=") (identifier "DAT_00088f58")) (; ";")) (goto_statement "goto LAB_00037040;" (goto "goto") (statement_identifier "LAB_00037040") (; ";")) (} "}"))) (labeled_statement "LAB_00037509:\n  pbVar9 = (byte *)FUN_0002f7d0(0);" (statement_identifier "LAB_00037509") (: ":") (expression_statement "pbVar9 = (byte *)FUN_0002f7d0(0);" (assignment_expression "pbVar9 = (byte *)FUN_0002f7d0(0)" (identifier "pbVar9") (= "=") (cast_expression "(byte *)FUN_0002f7d0(0)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0002f7d0(0)" (identifier "FUN_0002f7d0") (argument_list "(0)" (( "(") (number_literal "0") () ")"))))) (; ";"))) (if_statement "if (DAT_00088f58 <= DAT_00088a34) {\nLAB_00037376:\n    pbVar6 = DAT_00088a34;\n    if (DAT_00088a34 <= pbVar9) goto LAB_00037040;\n  }" (if "if") (parenthesized_expression "(DAT_00088f58 <= DAT_00088a34)" (( "(") (binary_expression "DAT_00088f58 <= DAT_00088a34" (identifier "DAT_00088f58") (<= "<=") (identifier "DAT_00088a34")) () ")")) (compound_statement "{\nLAB_00037376:\n    pbVar6 = DAT_00088a34;\n    if (DAT_00088a34 <= pbVar9) goto LAB_00037040;\n  }" ({ "{") (labeled_statement "LAB_00037376:\n    pbVar6 = DAT_00088a34;" (statement_identifier "LAB_00037376") (: ":") (expression_statement "pbVar6 = DAT_00088a34;" (assignment_expression "pbVar6 = DAT_00088a34" (identifier "pbVar6") (= "=") (identifier "DAT_00088a34")) (; ";"))) (if_statement "if (DAT_00088a34 <= pbVar9) goto LAB_00037040;" (if "if") (parenthesized_expression "(DAT_00088a34 <= pbVar9)" (( "(") (binary_expression "DAT_00088a34 <= pbVar9" (identifier "DAT_00088a34") (<= "<=") (identifier "pbVar9")) () ")")) (goto_statement "goto LAB_00037040;" (goto "goto") (statement_identifier "LAB_00037040") (; ";"))) (} "}"))) (labeled_statement "LAB_0003737c:\n  pbVar6 = pbVar9 + 1;" (statement_identifier "LAB_0003737c") (: ":") (expression_statement "pbVar6 = pbVar9 + 1;" (assignment_expression "pbVar6 = pbVar9 + 1" (identifier "pbVar6") (= "=") (binary_expression "pbVar9 + 1" (identifier "pbVar9") (+ "+") (number_literal "1"))) (; ";"))) (goto_statement "goto LAB_00037040;" (goto "goto") (statement_identifier "LAB_00037040") (; ";")) (} "}")))

/* WARNING: Function: __x86.get_pc_thunk.ax replaced with injection: get_pc_thunk_ax */
/* WARNING: Unknown calling convention */

void function_1(char *name)

{
  size_t sVar1;
  type_1 var_29;
  type_1 var_28;
  type_1 var_32;
  type_2 *var_60;
  type_3 *puVar6;
  char var_55;
  char var_16;
  type_1 *var_38;
  char *var_25;
  type_1 *var_33;
  void *var_59;
  char *var_41;
  char *var_42;
  size_t var_22;
  int var_31;
  type_4 var_27;
  size_t var_43;
  bool var_39;
  bool bVar19;
  type_1 bVar20;
  type_5 aVar21;
  char *var_45;
  char *var_20;
  type_6 sbuf;
  
  bVar20 = 0;
  var_13 = 0;
  buffer = var_1(name);
  var_2(name);
  var_3((char *)0x0);
  var_4(name);
  if (var_5 == var_6) {
    var_7();
  }
LAB_00036ffa:
  do {
    var_9 = var_8(&var_15);
    if (var_9 == (char *)0x0) {
LAB_00037649:
      var_10((type_7 *)PTR_dot_symbol_0007ff6c);
      var_11();
      if ((var_12 != 0) && (var_13 != 0)) {
        var_14(found_comment_file,var_13,"first comment found here");
        return;
      }
      return;
    }
    read_a_source_file::lexical_block_7::last_eol = (char *)0x0;
    var_38 = (type_1 *)var_15;
LAB_00037040:
    var_15 = (char *)var_38;
  } while (var_9 <= var_15);
LAB_00037044:
  var_16 = is_end_of_line[(type_1)var_15[-1]];
  if (var_16 == '\0') {
    if (var_17 != 0) {
LAB_00037065:
      if (((var_17 & 0x40U) == 0) || (var_18 < 1)) {
        var_3((char *)0x0);
      }
      else {
        var_20 = var_19(var_15,0,0,0);
        if (function_1::lexical_block_7::last_eol != var_20) {
          var_22 = (int)var_20 - (int)var_15;
          read_a_source_file::lexical_block_7::last_eol = var_20;
          var_25 = (char *)var_21(var_22 + var_18 + 2);
          var_31 = var_18;
          var_23(var_25,0x3e,var_18);
          var_25[var_31] = ' ';
          var_24(var_25 + var_18 + 1,var_15,var_22);
          var_25[var_18 + var_22 + 1] = '\0';
          var_3(var_25);
        }
      }
      if (var_16 != '\0') goto LAB_00037094;
    }
  }
  else {
    var_10((type_7 *)PTR_dot_symbol_0007ff6c);
    if (var_15[-1] == '\n') {
      var_26();
    }
    if (var_17 != 0) goto LAB_00037065;
LAB_00037094:
    var_63 = (type_7 *)0x0;
  }
  do {
    puVar6 = PTR__sch_istable_0007ff84;
    var_38 = (type_1 *)var_15 + 1;
    var_29 = *var_15;
    var_27 = (type_4)var_29;
    var_15 = (char *)var_38;
    if (0x17 < (type_1)(var_27 - 9)) {
      var_28 = lex_type[var_27];
      goto joined_r0x000370d3;
    }
  } while ((0x800009U >> (var_27 - 9 & 0x1f) & 1) != 0);
  var_28 = lex_type[var_27];
joined_r0x000370d3:
  if (((var_28 & 2) == 0) && (var_29 != 0x22)) {
    if (is_end_of_line[var_27] != '\0') goto LAB_00037040;
    if ((PTR__sch_istable_0007ff84[var_27 * 2] & 4) != 0) {
      var_31 = var_30();
      if (var_31 != 0) goto LAB_00037509;
      var_31 = (char)var_29 + -0x30;
      var_28 = *var_15;
      var_32 = puVar6[(type_4)var_28 * 2];
      var_33 = (type_1 *)var_15;
      while ((var_32 & 4) != 0) {
        var_33 = var_33 + 1;
        var_31 = (char)var_28 + -0x30 + var_31 * 10;
        var_28 = *var_33;
        var_32 = puVar6[(type_4)var_28 * 2];
      }
      var_15 = (char *)(var_33 + 1);
      if (*var_33 == 0x3a) {
        var_34(var_31);
        var_25 = var_35(var_31,0);
        var_36(var_25);
        var_38 = (type_1 *)var_15;
        goto LAB_00037040;
      }
    }
    var_15 = (char *)var_38;
    if (var_29 == 0) goto LAB_00037439;
    var_25 = var_37(PTR_line_comment_chars_0007ffa0,(int)(char)var_29);
    var_39 = false;
    bVar19 = var_25 == (char *)0x0;
    if (bVar19) goto LAB_00037439;
    var_20 = var_15;
    var_31 = 4;
    var_38 = (type_1 *)var_15;
    var_33 = &DAT_0005e3fa;
    do {
      if (var_31 == 0) break;
      var_31 = var_31 + -1;
      var_39 = *var_38 < *var_33;
      bVar19 = *var_38 == *var_33;
      var_38 = var_38 + (type_4)bVar20 * -2 + 1;
      var_33 = var_33 + (type_4)bVar20 * -2 + 1;
    } while (bVar19);
    if ((!var_39 && !bVar19) == var_39) {
      var_26();
      var_25 = var_20 + 4;
      var_20 = var_25;
      var_41 = var_40(var_25,"#NO_APP\n");
      if (var_41 == (char *)0x0) {
        var_22 = (int)var_9 - (int)var_25;
        var_45 = (char *)var_21(var_22 + 1);
        var_24(var_45,var_20,var_22);
        while (var_41 = var_8(&buffer), var_25 = buffer, var_41 != (char *)0x0)
        {
          var_15 = buffer;
          var_9 = var_41;
          var_42 = var_40(buffer,"#NO_APP\n");
          if (var_42 != (char *)0x0) {
            var_43 = (int)var_42 - (int)var_25;
            sVar1 = var_22 + var_43;
            var_45 = (char *)var_44(var_45,sVar1);
            var_24(var_45 + var_22,buffer,var_43);
            var_15 = var_42 + 8;
            var_22 = sVar1;
            goto LAB_00037b57;
          }
          var_43 = (int)var_41 - (int)var_25;
          sVar1 = var_22 + var_43;
          var_45 = (char *)var_44(var_45,sVar1);
          var_24(var_45 + var_22,buffer,var_43);
          var_22 = sVar1;
        }
        var_15 = (char *)0x0;
LAB_00037b57:
        var_20 = var_45;
        var_41 = var_45 + var_22;
        scrub_string = var_45;
      }
      else {
        var_15 = var_41 + 8;
        var_45 = (char *)0x0;
        scrub_string = var_25;
      }
      var_31 = (int)var_41 - (int)scrub_string;
      scrub_string_end = var_41;
      var_25 = (char *)var_21(var_31);
      var_41 = var_25;
      while (var_42 = (char *)var_46(scrub_from_string,var_25,
                                              (size_t)(var_41 + (var_31 - (int)var_25))),
            var_41 + (var_31 - (int)var_25) <= var_42) {
        var_41 = (char *)var_44(var_41,var_31 + 100);
        var_25 = var_41 + var_31;
        var_31 = var_31 + 100;
      }
      var_25[(int)var_42] = '\0';
      if (var_45 != (char *)0x0) {
        var_47(var_45);
      }
      var_22 = var_48(var_41);
      var_49(&sbuf,var_22);
      var_50(&sbuf,var_41,var_22);
      var_51(&sbuf,var_15,0);
      var_52(&sbuf);
      var_25 = var_8(&var_15);
      var_9 = var_25;
      var_47(var_41);
    }
    else {
      var_53();
      var_25 = var_9;
    }
    if (var_25 <= var_15) goto LAB_00036ffa;
    goto LAB_00037044;
  }
  var_31 = var_30();
  if (var_31 != 0) {
    var_25 = var_19(var_15 + -1,0,0,0);
    if (var_15 <= var_9) goto LAB_00037376;
    goto LAB_0003737c;
  }
  var_15 = var_15 + -1;
  var_55 = var_54(&var_20);
  var_38 = (type_1 *)var_20;
  var_31 = 1;
  var_16 = var_55;
  if (var_55 == '\"') {
    var_16 = var_15[1];
    var_31 = 2;
  }
  var_25 = var_15 + var_31;
  if (var_16 == ':') {
    var_63 = var_36(var_20);
    var_56(var_55);
    var_38 = (type_1 *)(var_15 + 1);
    if (var_15[1] == ' ') {
      var_38 = (type_1 *)(var_15 + 2);
    }
    goto LAB_00037040;
  }
  if (var_16 == '=') {
    if (*var_25 == '=') goto LAB_00037691;
LAB_0003746c:
    var_31 = 1;
  }
  else {
    if (((var_16 != ' ') && (var_16 != '\t')) || (*var_25 != '=')) {
      var_57(original_case_string,var_20,0x80);
      puVar6 = PTR__sch_tolower_0007ffcc;
      original_case_string[0x7f] = 0;
      var_29 = *var_38;
      if (var_29 == 0) goto LAB_0003726e;
      do {
        *var_38 = puVar6[var_29];
        var_29 = var_38[1];
        var_38 = var_38 + 1;
      } while (var_29 != 0);
      if (*var_20 == '.') {
        var_59 = var_58(po_hash,var_20 + 1);
        if ((var_59 == (void *)0x0) ||
           (var_60 = *(type_2 **)((int)var_59 + 4), var_60 == (type_2 *)0x0)) {
          if (var_61 != 0) {
            var_62(1,(char *)0x0,0,0);
            var_61 = 0;
            if (var_63 != (type_7 *)0x0) {
              var_64(var_63,frag_now);
              aVar21 = var_65();
              var_66(var_63,aVar21);
            }
          }
          var_41 = var_15;
          var_56(var_55);
          var_53();
          var_16 = var_15[-1];
          var_25 = var_15 + -1;
          var_15 = var_15 + -1;
          *var_25 = '\0';
          if ((var_67 == 0) ||
             (var_31 = var_68(var_16,var_20), var_38 = (type_1 *)var_15, var_31 == 0)) {
            var_25 = var_20;
            *var_41 = '\0';
            var_41 = (char *)var_69(0,"unknown pseudo-op: `%s\'");
            var_70(var_41,var_25);
            var_25 = var_15 + 1;
            *var_15 = var_16;
            var_15 = var_25;
            var_38 = (type_1 *)var_15;
          }
        }
        else {
          if ((var_61 != 0) &&
             ((((var_60 != var_71 && (var_60 != var_72)) || (*(int *)((int)var_59 + 8) != 1)) &&
              (((((((var_60 != (type_2 *)PTR_s_if_0007ff74 && var_60 != (type_2 *)PTR_s_ifdef_0007fff4)
                   && var_60 != (type_2 *)PTR_s_ifc_0007ffd4) &&
                  var_60 != (type_2 *)PTR_s_ifeqs_0007ffc4) && var_60 != (type_2 *)PTR_s_else_0007ff94)
                && var_60 != (type_2 *)PTR_s_endif_0007ff5c) && var_60 != var_73 &&
               (var_60 != var_74)))))) {
            var_62(1,(char *)0x0,0,0);
            var_61 = 0;
            if (var_63 != (type_7 *)0x0) {
              var_64(var_63,frag_now);
              aVar21 = var_65();
              var_66(var_63,aVar21);
            }
          }
          var_16 = var_56(var_55);
          if ((var_16 == ' ') || (var_16 == '\t')) {
            var_15 = var_15 + 1;
          }
          (**(type_2 **)((int)var_59 + 4))(*(type_8 *)((int)var_59 + 8));
          var_38 = (type_1 *)var_15;
          if (*(type_2 **)((int)var_59 + 4) == var_75) goto LAB_00037649;
        }
      }
      else {
LAB_0003726e:
        var_56(var_55);
        var_15 = var_19(var_15,0,1,0);
        var_16 = *var_15;
        *var_15 = '\0';
        var_76();
        if ((var_67 == 0) ||
           (var_31 = var_68(var_16,var_20), var_38 = (type_1 *)var_15, var_31 == 0)) {
          if (var_61 != 0) {
            var_62(1,(char *)0x0,0,0);
            var_61 = 0;
            if (var_63 != (type_7 *)0x0) {
              var_64(var_63,frag_now);
              aVar21 = var_65();
              var_66(var_63,aVar21);
            }
          }
          var_77(var_20);
          if (var_15 == (char *)0x0) {
            var_25 = (char *)var_69(0,"unable to continue with assembly.",5);
                    /* WARNING: Subroutine does not return */
            var_78(var_25);
          }
          var_25 = var_15 + 1;
          *var_15 = var_16;
          var_15 = var_25;
          var_38 = (type_1 *)var_15;
        }
      }
      goto LAB_00037040;
    }
    if (var_25[1] != '=') goto LAB_0003746c;
LAB_00037691:
    var_31 = -1;
  }
  var_79(var_20,var_31);
  var_80();
  var_38 = (type_1 *)var_15;
  goto LAB_00037040;
LAB_00037439:
  var_31 = var_30();
  if (var_31 == 0) {
    var_15 = var_15 + -1;
    var_80();
    var_38 = (type_1 *)var_15;
    goto LAB_00037040;
  }
LAB_00037509:
  var_25 = var_19(var_15 + -1,0,0,0);
  if (var_15 <= var_9) {
LAB_00037376:
    var_38 = (type_1 *)var_9;
    if (var_9 <= var_25) goto LAB_00037040;
  }
LAB_0003737c:
  var_38 = (type_1 *)(var_25 + 1);
  goto LAB_00037040;
}


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

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

void MASKED(undefined4 param_1)

{
  byte bVar1;
  code *pcVar2;
  undefined *puVar3;
  byte bVar4;
  char cVar5;
  byte *pbVar6;
  char *pcVar7;
  size_t sVar8;
  void *__s;
  byte *pbVar9;
  char *__s_00;
  char *pcVar10;
  size_t sVar11;
  undefined4 uVar12;
  int iVar13;
  byte bVar14;
  uint uVar15;
  size_t sVar16;
  undefined4 extraout_EDX;
  bool bVar17;
  bool bVar18;
  byte bVar19;
  undefined8 uVar20;
  byte *local_34;
  byte *local_2c;
  undefined1 local_28 [24];
  
  bVar19 = 0;
  DAT_00088e0c = 0;
  DAT_00088a38 = (byte *)FUN_00028de0(param_1);
  FUN_0002b740(param_1);
  FUN_0002a220(0);
  FUN_0001ccd0(param_1);
  if (DAT_000886b8 == 2) {
    FUN_00038cd0();
  }
LAB_00036ffa:
  do {
    DAT_00088a34 = (byte *)FUN_00028fd0(&DAT_00088f58);
    if (DAT_00088a34 == (byte *)0x0) {
LAB_00037649:
      FUN_0003e1c0(PTR_DAT_0007ff6c);
      FUN_00028fa0();
      if ((DAT_00088d64 != 0) && (DAT_00088e0c != 0)) {
        FUN_0002ec20(DAT_00088d6c,DAT_00088e0c,"first comment found here");
        return;
      }
      return;
    }
    DAT_00088a0c = (byte *)0x0;
    pbVar6 = DAT_00088f58;
LAB_00037040:
    DAT_00088f58 = pbVar6;
  } while (DAT_00088a34 <= DAT_00088f58);
LAB_00037044:
  cVar5 = (&DAT_000802c0)[DAT_00088f58[-1]];
  if (cVar5 == '\0') {
    if (_DAT_00088e00 != 0) {
LAB_00037065:
      if (((_DAT_00088e00 & 0x40) == 0) || ((int)DAT_00088f14 < 1)) {
        FUN_0002a220(0);
      }
      else {
        local_2c = (byte *)FUN_0002f7d0(0);
        if (DAT_00088a0c != local_2c) {
          sVar8 = (int)local_2c - (int)DAT_00088f58;
          DAT_00088a0c = local_2c;
          __s = (void *)xmalloc(sVar8 + DAT_00088f14 + 2);
          sVar11 = DAT_00088f14;
          memset(__s,0x3e,DAT_00088f14);
          *(undefined1 *)((int)__s + sVar11) = 0x20;
          memcpy((void *)((int)__s + DAT_00088f14 + 1),DAT_00088f58,sVar8);
          *(undefined1 *)((int)__s + DAT_00088f14 + sVar8 + 1) = 0;
          FUN_0002a220(__s);
        }
      }
      if (cVar5 != '\0') goto LAB_00037094;
    }
  }
  else {
    FUN_0003e1c0(PTR_DAT_0007ff6c);
    if (DAT_00088f58[-1] == 10) {
      FUN_00029290();
    }
    if (_DAT_00088e00 != 0) goto LAB_00037065;
LAB_00037094:
    DAT_00088f48 = 0;
  }
  do {
    puVar3 = PTR__sch_istable_0007ff84;
    pbVar6 = DAT_00088f58 + 1;
    bVar14 = *DAT_00088f58;
    uVar15 = (uint)bVar14;
    DAT_00088f58 = pbVar6;
    if (0x17 < (byte)(uVar15 - 9)) {
      bVar4 = (&DAT_000803c0)[uVar15];
      goto joined_r0x000370d3;
    }
  } while ((0x800009U >> (uVar15 - 9 & 0x1f) & 1) != 0);
  bVar4 = (&DAT_000803c0)[uVar15];
joined_r0x000370d3:
  if (((bVar4 & 2) == 0) && (bVar14 != 0x22)) {
    if ((&DAT_000802c0)[uVar15] != '\0') goto LAB_00037040;
    if ((PTR__sch_istable_0007ff84[uVar15 * 2] & 4) != 0) {
      iVar13 = FUN_0001c860();
      if (iVar13 != 0) goto LAB_00037509;
      iVar13 = (char)bVar14 + -0x30;
      bVar4 = *DAT_00088f58;
      bVar1 = puVar3[(uint)bVar4 * 2];
      pbVar9 = DAT_00088f58;
      while ((bVar1 & 4) != 0) {
        pbVar9 = pbVar9 + 1;
        iVar13 = (char)bVar4 + -0x30 + iVar13 * 10;
        bVar4 = *pbVar9;
        bVar1 = puVar3[(uint)bVar4 * 2];
      }
      DAT_00088f58 = pbVar9 + 1;
      if (*pbVar9 == 0x3a) {
        FUN_0003a8d0(iVar13);
        uVar12 = FUN_0003aa40(iVar13,0);
        FUN_0003d480(uVar12);
        pbVar6 = DAT_00088f58;
        goto LAB_00037040;
      }
    }
    DAT_00088f58 = pbVar6;
    if (bVar14 == 0) goto LAB_00037439;
    pcVar7 = strchr(PTR_DAT_0007ffa0,(int)(char)bVar14);
    bVar17 = false;
    bVar18 = pcVar7 == (char *)0x0;
    if (bVar18) goto LAB_00037439;
    local_2c = DAT_00088f58;
    iVar13 = 4;
    pbVar6 = DAT_00088f58;
    pbVar9 = &DAT_0005e3fa;
    do {
      if (iVar13 == 0) break;
      iVar13 = iVar13 + -1;
      bVar17 = *pbVar6 < *pbVar9;
      bVar18 = *pbVar6 == *pbVar9;
      pbVar6 = pbVar6 + (uint)bVar19 * -2 + 1;
      pbVar9 = pbVar9 + (uint)bVar19 * -2 + 1;
    } while (bVar18);
    if ((!bVar17 && !bVar18) == bVar17) {
      FUN_00029290();
      pbVar6 = local_2c + 4;
      local_2c = pbVar6;
      pbVar9 = (byte *)strstr((char *)pbVar6,"#NO_APP\n");
      if (pbVar9 == (byte *)0x0) {
        sVar11 = (int)DAT_00088a34 - (int)pbVar6;
        local_34 = (byte *)xmalloc(sVar11 + 1);
        memcpy(local_34,local_2c,sVar11);
        while (pbVar9 = (byte *)FUN_00028fd0(&DAT_00088a38), pbVar6 = DAT_00088a38,
              pbVar9 != (byte *)0x0) {
          DAT_00088f58 = DAT_00088a38;
          DAT_00088a34 = pbVar9;
          pcVar7 = strstr((char *)DAT_00088a38,"#NO_APP\n");
          if (pcVar7 != (char *)0x0) {
            sVar16 = (int)pcVar7 - (int)pbVar6;
            sVar8 = sVar11 + sVar16;
            local_34 = (byte *)xrealloc(local_34,sVar8);
            memcpy(local_34 + sVar11,DAT_00088a38,sVar16);
            DAT_00088f58 = (byte *)(pcVar7 + 8);
            sVar11 = sVar8;
            goto LAB_00037b57;
          }
          sVar16 = (int)pbVar9 - (int)pbVar6;
          sVar8 = sVar11 + sVar16;
          local_34 = (byte *)xrealloc(local_34,sVar8);
          memcpy(local_34 + sVar11,DAT_00088a38,sVar16);
          sVar11 = sVar8;
        }
        DAT_00088f58 = (byte *)0x0;
LAB_00037b57:
        local_2c = local_34;
        pbVar9 = local_34 + sVar11;
        DAT_00088a1c = local_34;
      }
      else {
        DAT_00088f58 = pbVar9 + 8;
        local_34 = (byte *)0x0;
        DAT_00088a1c = pbVar6;
      }
      iVar13 = (int)pbVar9 - (int)DAT_00088a1c;
      DAT_00088a18 = pbVar9;
      pcVar7 = (char *)xmalloc(iVar13);
      __s_00 = pcVar7;
      while (pcVar10 = (char *)FUN_00019430(FUN_0002f780,pcVar7,__s_00 + (iVar13 - (int)pcVar7)),
            __s_00 + (iVar13 - (int)pcVar7) <= pcVar10) {
        __s_00 = (char *)xrealloc(__s_00,iVar13 + 100);
        pcVar7 = __s_00 + iVar13;
        iVar13 = iVar13 + 100;
      }
      pcVar7[(int)pcVar10] = '\0';
      if (local_34 != (byte *)0x0) {
        free(local_34);
      }
      sVar11 = strlen(__s_00);
      FUN_00038130(local_28,sVar11);
      FUN_00038310(local_28,__s_00,sVar11);
      FUN_00028ea0(local_28,DAT_00088f58,0);
      FUN_000381b0(local_28);
      pbVar6 = (byte *)FUN_00028fd0(&DAT_00088f58);
      DAT_00088a34 = pbVar6;
      free(__s_00);
    }
    else {
      FUN_00030fc0();
      pbVar6 = DAT_00088a34;
    }
    if (pbVar6 <= DAT_00088f58) goto LAB_00036ffa;
    goto LAB_00037044;
  }
  iVar13 = FUN_0001c860();
  if (iVar13 != 0) {
    pbVar9 = (byte *)FUN_0002f7d0(0);
    if (DAT_00088f58 <= DAT_00088a34) goto LAB_00037376;
    goto LAB_0003737c;
  }
  DAT_00088f58 = DAT_00088f58 + -1;
  bVar4 = FUN_00025220(&local_2c);
  pbVar6 = local_2c;
  iVar13 = 1;
  bVar14 = bVar4;
  if (bVar4 == 0x22) {
    bVar14 = DAT_00088f58[1];
    iVar13 = 2;
  }
  pbVar9 = DAT_00088f58 + iVar13;
  if (bVar14 == 0x3a) {
    DAT_00088f48 = FUN_0003d480(local_2c);
    FUN_00027230((int)(char)bVar4);
    pbVar6 = DAT_00088f58 + 1;
    if (DAT_00088f58[1] == 0x20) {
      pbVar6 = DAT_00088f58 + 2;
    }
    goto LAB_00037040;
  }
  if (bVar14 == 0x3d) {
    if (*pbVar9 == 0x3d) goto LAB_00037691;
LAB_0003746c:
    uVar12 = 1;
  }
  else {
    if (((bVar14 != 0x20) && (bVar14 != 9)) || (*pbVar9 != 0x3d)) {
      strncpy(&DAT_00088f60,(char *)local_2c,0x80);
      puVar3 = PTR__sch_tolower_0007ffcc;
      DAT_00088fdf = 0;
      bVar14 = *pbVar6;
      if (bVar14 == 0) goto LAB_0003726e;
      do {
        *pbVar6 = puVar3[bVar14];
        bVar14 = pbVar6[1];
        pbVar6 = pbVar6 + 1;
      } while (bVar14 != 0);
      if (*local_2c == 0x2e) {
        iVar13 = FUN_000283e0(DAT_00088a28,local_2c + 1);
        if ((iVar13 == 0) || (pcVar2 = *(code **)(iVar13 + 4), pcVar2 == (code *)0x0)) {
          if (DAT_00088a30 != 0) {
            FUN_000307b0(1,0,0,0);
            DAT_00088a30 = 0;
            if (DAT_00088f48 != 0) {
              FUN_0003e160(DAT_00088f48,DAT_00088e84);
              uVar20 = FUN_00027cf0();
              FUN_0003ae10(DAT_00088f48,uVar20);
            }
          }
          pbVar9 = DAT_00088f58;
          FUN_00027230((int)(char)bVar4);
          FUN_00030fc0();
          bVar14 = DAT_00088f58[-1];
          pbVar6 = DAT_00088f58 + -1;
          DAT_00088f58 = DAT_00088f58 + -1;
          *pbVar6 = 0;
          if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0))
          {
            pbVar6 = local_2c;
            *pbVar9 = 0;
            uVar12 = dcgettext(0,"unknown pseudo-op: `%s\'",5);
            FUN_0002ec90(uVar12,pbVar6);
            pbVar6 = DAT_00088f58 + 1;
            *DAT_00088f58 = bVar14;
            DAT_00088f58 = pbVar6;
            pbVar6 = DAT_00088f58;
          }
        }
        else {
          if ((DAT_00088a30 != 0) &&
             ((((pcVar2 != FUN_00034160 && (pcVar2 != FUN_00034910)) || (*(int *)(iVar13 + 8) != 1))
              && (((((((pcVar2 != (code *)PTR_FUN_0007ff74 && pcVar2 != (code *)PTR_FUN_0007fff4) &&
                      pcVar2 != (code *)PTR_FUN_0007ffd4) && pcVar2 != (code *)PTR_FUN_0007ffc4) &&
                    pcVar2 != (code *)PTR_FUN_0007ff94) && pcVar2 != (code *)PTR_FUN_0007ff5c) &&
                   pcVar2 != FUN_00035b60 && (pcVar2 != thunk_FUN_00030fc0)))))) {
            FUN_000307b0(1,0,0,0);
            DAT_00088a30 = 0;
            if (DAT_00088f48 != 0) {
              FUN_0003e160(DAT_00088f48,DAT_00088e84,extraout_EDX,extraout_EDX);
              uVar20 = FUN_00027cf0();
              FUN_0003ae10(DAT_00088f48,uVar20);
            }
          }
          cVar5 = FUN_00027230((int)(char)bVar4);
          if ((cVar5 == ' ') || (cVar5 == '\t')) {
            DAT_00088f58 = DAT_00088f58 + 1;
          }
          (**(code **)(iVar13 + 4))(*(undefined4 *)(iVar13 + 8));
          pbVar6 = DAT_00088f58;
          if (*(code **)(iVar13 + 4) == FUN_000300b0) goto LAB_00037649;
        }
      }
      else {
LAB_0003726e:
        FUN_00027230((int)(char)bVar4);
        DAT_00088f58 = (byte *)FUN_0002f7d0(0);
        bVar14 = *DAT_00088f58;
        *DAT_00088f58 = 0;
        FUN_00036f40();
        if ((DAT_00088f1c == 0) || (iVar13 = FUN_0002fa10(), pbVar6 = DAT_00088f58, iVar13 == 0)) {
          if (DAT_00088a30 != 0) {
            FUN_000307b0(1,0,0,0);
            DAT_00088a30 = 0;
            if (DAT_00088f48 != 0) {
              FUN_0003e160(DAT_00088f48,DAT_00088e84);
              uVar20 = FUN_00027cf0();
              FUN_0003ae10(DAT_00088f48,uVar20);
            }
          }
          FUN_00048cd0(local_2c);
          if (DAT_00088f58 == (byte *)0x0) {
            uVar12 = dcgettext(0,"unable to continue with assembly.",5);
                    /* WARNING: Subroutine does not return */
            FUN_0002ed30(uVar12);
          }
          pbVar6 = DAT_00088f58 + 1;
          *DAT_00088f58 = bVar14;
          DAT_00088f58 = pbVar6;
          pbVar6 = DAT_00088f58;
        }
      }
      goto LAB_00037040;
    }
    if (pbVar9[1] != 0x3d) goto LAB_0003746c;
LAB_00037691:
    uVar12 = 0xffffffff;
  }
  FUN_00036d70(local_2c,uVar12);
  FUN_00031210();
  pbVar6 = DAT_00088f58;
  goto LAB_00037040;
LAB_00037439:
  iVar13 = FUN_0001c860();
  if (iVar13 == 0) {
    DAT_00088f58 = DAT_00088f58 + -1;
    FUN_00031210();
    pbVar6 = DAT_00088f58;
    goto LAB_00037040;
  }
LAB_00037509:
  pbVar9 = (byte *)FUN_0002f7d0(0);
  if (DAT_00088f58 <= DAT_00088a34) {
LAB_00037376:
    pbVar6 = DAT_00088a34;
    if (DAT_00088a34 <= pbVar9) goto LAB_00037040;
  }
LAB_0003737c:
  pbVar6 = pbVar9 + 1;
  goto LAB_00037040;
}

